如何创建一个不由轮询驱动的聊天服务器?

2024-03-02

我创建了一个由客户端轮询驱动的简单聊天服务器。客户端每隔几秒发送一次数据请求,并收到任何新消息以及有关其对等方是否仍处于连接状态的信息。

由于客户端在移动平台(iPhone)上运行,我一直在寻找摆脱轮询的方法,因为轮询会很快耗尽电池。我读到可以无限期地保持 http 连接打开,但不明白如何在实践中利用这种技术。我还想知道这种连接是否足够稳定,可以在移动环境中使用。

理想的情况是,服务器仅在发生影响客户端的事件(例如对等方发布消息或离线)时才向客户端发送数据。

是否建议尝试通过 http 来完成此任务,或者我必须通过 tcp 编写自己的协议?根据我的需要定制 xmpp 有多难(我的聊天服务器有一些我必须轻松实现的专门功能)。


推送技术怎么样?看http://en.wikipedia.org/wiki/Comet_(编程) http://en.wikipedia.org/wiki/Comet_(programming)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何创建一个不由轮询驱动的聊天服务器? 的相关文章

随机推荐