【发布时间】:2010-10-10 21:19:25
【问题描述】:
是否值得将 Comet 用于“实时”不需要但可能延迟 1 分钟的事件。比如:
- 推特状态更新
- 脸书更新
我知道 Comet 非常适合聊天应用程序(Facebook 和 GTalk 聊天正在使用它),但是 twitter,例如,使用 comet。
或者 AJAX 轮询对于此类更新是否足够。为什么我认为它可能就足够了:
- 轮询间隔为 1 分钟,您不会使用 ajax 请求在服务器上施加过多负载
- “没有新数据”不是主要结果,例如在聊天应用中。
- 没有服务器线程被保留,因此线程可以被多个客户端重用。因此,100 个线程的线程池可能被 200 个客户端使用,而 Comet 则为 100 个。(这不适用于我的情况,使用 Java - 请参阅this article,它解释了巧妙的线程重用)
(注意:我用“comet”表示保持连接打开的技术。有些人也倾向于将 ajax-polling 称为彗星,所以我做出澄清 - ajax-polling != 以上问题中的彗星)
【问题讨论】:
标签: javascript ajax web-applications comet