最近看到了不少Facebook chat技术架构的介绍,如 InfoQInside Facebook。总结如下,公开的资料以概念为主,没有什么新的或特殊的亮点。

Presence notification



  • Facebook Chat 与一般的IM系统一样。最复杂之处不是消息发送,而是在线状态通知。而facebook为了提高用户体验,考虑增加的功能更增大这些处理,比如好友可以看到某个用户“idle-for-10-minutes”,用户即使不操作也有巨大负荷。

  • 处理量是:O(平均好友数 * 在线用户峰值 * 变化频率) msg /sec ?


Comet



  • Facebook 网页上是一种特殊的comet, 每打开一个页面调用一个iframe, iframe直至有消息才会输出。Polling + push?

  • Comet不适合用Apache来跑, 可参看comet server之java实现:asyncweb,jetty,tomcat

  • Facebook使用基于epoll技术的erlang web server


Erlang



[更多查看原文]

点评 Trackback 添加到... 收藏它 拍它!

这些挖友臭味相投 · · · · · ·


挖友说 · · · · · ·

 

匿名评论
(尊重网上道德,承担一切因您的行为而直接或间接导致的法律责任)

 

 
合作伙伴:   刷刷   煎蛋   动态网站制作指南   265上网导航   新新web2.0   9Fav就喜欢网   Linux桌面中文网   DigiArt   我爱水煮鱼   奇趣发现   IB资讯   天涯海阁
  职客网   乐婴网   cngadget   有意思吧   软件一千零一页  DiggLife  设计|生活|发现新鲜   掘客巴士  17Fav  掘图志   桑林志   91新鲜网   精灵的天下