当今最先进、最可靠的 COMET 解决方案是什么?

发布于 2024-11-29 12:17:46 字数 854 浏览 2 评论 0原文

问题:每天需要向网络用户提供数百万条实时通知。

需求:

  • 可扩展性
  • 无需代理的跨域请求。 (XHR 轮询不起作用)
  • 跨浏览器支持。 (不能仅依赖于 websockets 或 flash 套接字) 经过
  • 良好测试和维护的组件

到目前为止,我已经提出了一些具有各种限制的解决方案:

RabbitMQ + node.js + Socket.IO

这是到目前为止我最喜欢的解决方案,但是当涉及到大量请求时,有人抱怨 Node.js 部分的可靠性。 plurk.com的经验 http://amix.dk/blog/post/19577

XMPP/BOSH + strope .js

这看起来也很可靠,但由于 BOSH 的限制,JSONP 轮询是不可能的,因此 - 没有跨域请求。

Mochiweb + Dojo

据称 Facebook 使用 Mochiweb 作为他们的聊天系统(顺便说一句,这很糟糕)。设置和维护似乎太复杂。我错了吗?

JBoss Netty

Java 服务器。这就是 plurk.com 用来提供通知的方式。目前还不清楚浏览器端可以使用什么。

Faye + node.js

非常容易设置,但似乎在重负载下效果不佳,未经测试,也没有明确的扩展方法。

有什么想法或经验吗? :)

Problem: need to serve millions of realtime notifications to web users per day.

Requirements:

  • Scalability
  • Cross-domain requests without proxies. (XHR polling won't work)
  • Cross browser support. (Can't rely only on websockets or flash sockets)
  • Well-tested and maintained components

So far I have come up with some solutions wich have various limitations:

RabbitMQ + node.js + Socket.IO

This is my favorite solution so far but there were complains about reliability of node.js part, when it comes to huge number of requests. Experience of plurk.com http://amix.dk/blog/post/19577

XMPP/BOSH + strophe.js

This also looks reliable but due to limitation of BOSH, JSONP polling is not possible and therefore - no cross-domain requests.

Mochiweb + Dojo

It is claimed that Facebook uses Mochiweb for their chat system (which sucks btw). Seems too complex to setup and maintain. Am I wrong?

JBoss Netty

Java server. This is what plurk.com uses to serve their notifications. It is unclear of what can be used on browser side.

Faye + node.js

Very easy to set up, but seems that it doesn't work well on heavy loads, not tested and there's no clear way to scale.

Any ideas or experience? :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文