0

我正在开发一个页面,需要能够根据服务器的状态保持更新。

我喜欢 websockets,因为它们为我提供了一种从服务器推送消息的方式,但可用性是一个问题。

我需要通用的方式在网络服务器和浏览器客户端之间进行双向通信。

我希望能够在我的服务器上容纳大量客户端,因此忙于等待客户端不是一个好的解决方案。

我看过长池,但这就像忙于等待客户端部分一样——如果我需要 IE 支持,这是唯一的方法吗?

这个问题仅与交易的客户端有关。

4

3 回答 3

1

您需要双向通信吗?如果不是,您应该使用SSE(服务器发送事件)。它们也更容易在 IE 中模拟(因为 SSE 实际上在旧系统上优雅地降级为长轮询)。

于 2012-10-15T13:24:21.353 回答
1

是的,你是对的,长轮询存在问题,它往往会消耗大量资源。

您需要的是我可以看到的解决方案,该解决方案具有回退到 HTTP longopolling 的老而不是 Websockets API 的浏览器。SSE 是一种替代方案,但 Websockets 感觉更方便

如果您在 .NET 平台上运行 XSockets.NET 可以作为替代方案,它支持 Websockets(RFC6544 和 Hybi00)并在需要时回退 HTTP Longpolling(即 IE)

看看http://xsockets.net

于 2012-10-16T09:38:06.550 回答
0

您查看过http://signalr.net/吗?基于 websockets,但会优雅地降级到最近的可用组件以支持套接字类型连接。

文档可以在这里找到:https ://github.com/SignalR/SignalR/wiki

于 2012-10-15T13:17:23.177 回答