【发布时间】:2010-10-30 14:16:17
【问题描述】:
我将实现 Comet 聊天。很容易为服务器端做出选择,但为客户端做出选择——我真的很困惑:长轮询、回调轮询、隐藏 iframe、http 流、持久 http 连接......
我对这些概念了解不多,谁能帮我说清楚?我只是想选择最好的方式来实现一个Comet聊天客户端~
【问题讨论】:
标签: comet
我将实现 Comet 聊天。很容易为服务器端做出选择,但为客户端做出选择——我真的很困惑:长轮询、回调轮询、隐藏 iframe、http 流、持久 http 连接......
我对这些概念了解不多,谁能帮我说清楚?我只是想选择最好的方式来实现一个Comet聊天客户端~
【问题讨论】:
标签: comet
一旦您选择了服务器端组件,您就会知道要使用哪个客户端组件。
例如,如果您使用 WebSync (for ASP.NET/IIS),您将使用 Bayeux 协议的实现作为客户端 - 根据您的需求,可以是内置的,也可以是其他可用的实现之一(dojo、jquery 等)需要。
如果您使用 StreamHub 之类的东西,他们的软件包也会有一个可用的客户端。
您提到的各种项目——长轮询、回调轮询等——将在各种实现中对你隐藏起来。在 WebSync 中,我们支持长轮询和回调轮询,但是在使用客户端时您不需要了解任何相关信息,因为它会根据所使用的浏览器来处理。
【讨论】:
我认为长轮询是大多数商业服务似乎使用的技术。这是唯一适用于所有浏览器的选项。
【讨论】:
我认为这项技术并不重要,只要它适用于所有浏览器即可。 StreamHub Comet 服务器现在有一个免费的社区版 - 它可以跨浏览器工作,因此您不必担心实现不同的技术,例如长轮询。为什么有人已经为您完成了所有工作...我建议阅读教程:Building a Comet chat application with StreamHub。
【讨论】: