我正在为一个项目确定架构选项,该项目将呈现用户活动(登录、照片等)的实时更新(如 Facebook)。该项目的两个主要 UI 组件是一个自动更新滚动区域,其中将列出新通知(照片)等),以及一个将更新消息计数等内容的工具栏。
其竞争者是基于 Jabber/Comet/XMPP 和 WebSocket 技术。
彗星营地:
WebSockets 阵营:
-
Kaazing
-
光流
- 超级WebSocket
-
XSockets
- SignalR
由于现有的基础设施是 Microsoft 堆栈,因此我宁愿不将基于 Java 的服务器引入其中。说到这里,就剩下(非常吸引人的)WebSync(Comet)和SuperWebSocket(WebSockets)了。然而,Pokein 的 DLL 也可以相当无缝地集成到 .Net 项目中。
.Net 是否还有更多真正的生产级 WebSocket 计划?在 Microsoft 堆栈上采用 WebSocket 是否为时过早?我是否应该支持 Kazing 之类的技术?
我仍在等待有关我们当前用户群的浏览器类型和版本的报告(检查 HTML5 兼容性)。我怀疑这个数字会很低(较老的用户群)。如果是这样的话,彗星选项将是赢家。
还有哪些其他事情需要考虑?
看看 Sockets.IO 等一些 .Net 计划,我认为这可能还处于起步阶段,无法应用于大规模生产系统。
我可以从使用过上述任何技术和产品的人那里得到一些评论吗?
Thanks.
UPDATE
我仍在寻找一些在生产级别上可靠的优秀 WebSocket 服务器。最近发现 XSockets 和 SignalR 后,我将它们添加到了 Websockets 阵营。然而,目前仍然有两个主要竞争者。这可能只是因为他们拥有非常出色的营销团队,为开发人员提供了良好的材料 - API 和视频。许多其他实现似乎仍处于新生阶段,其中给出了仅与少数客户端连接的示例。虽然这演示了该技术,但这些演示没有重要的有效负载/负载能力数据支持。 Kaazing 和 LightStreamer 确实满足以下要求。
XSockets 有一些很好的示例,但同样缺少一些实际的生产指标。
SignalR 似乎还没有在真正的生产环境中经过测试。横向扩展解决方案正在开发中,但似乎尚未稳定。期待看到这个项目未来的表现。
主要要求是:
- 能够实施回退技术(如果 HTML5/WebSockets
无法使用)
- 高并发连接数和每个消息数
第二
- 可扩展 - 能够添加额外的服务器/节点以实现更大的规模
交通要求