浏览 3018 次
锁定老帖子 主题:QQ最新面试题
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-10-26
2、如何在内存中快速从2亿QQ用户中通过号码快速得到用户的信息? 3、很多用户进行查询和更新用户信息的操作怎么办? 4、同时有10W个连接请求,该如何处理? 我觉得: 1、NIO内存映射 2、Cache,哈希表(Map接口) 3、缓存,事务处理 3、线程池+I/O多路复用+集群均衡负载 大家一起讨论下啊. 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-10-26
分机器。qq我觉得其实是最容易扩容的,按照qq号分就可以了。每10万个号进入一组,分组处理,硬件几乎可以无限增加,毫无性能问题可言。
|
|
返回顶楼 | |
发表时间:2008-10-26
1、NIO内存映射
2、Cache,哈希表(Map接口) 3、缓存,事务处理 3、线程池+I/O多路复用+集群均衡负载 这个回答基本是靠谱的,如果你面试的普通程序员, 应该是很优秀的回答了。 但是, 对于一个架构师级别的面试, 这个回答, 可能是不满意的。 如果使用一个不存在的QQ号码进行冲击系统, 这个是很严重的问题, 去看看BloomFilter. 对于问题3, 事务一般不会使用,可以考虑使用日志类事务检查, 或者使用事务规范, 自己完成分布式事务。 同时有10W个连接请求,该如何处理? 这是个10K问题, 不是问你怎么做, 而是问你系统对于大规模连接, 对于单一机器的处理办法, 以及规模扩展的办法。 http://www.kegel.com/c10k.html 这个有兴趣的可以看看, 这个很经典的文章。 实际上, 这些问题都是目前QQ在大规模环境下真实问题。 这些问题不是回答的来就成的, 关键是是否一定的某些问题的实际操作解决能力。 |
|
返回顶楼 | |