【问题标题】:Web chat Long polling or another method?网络聊天 长轮询或其他方法?
【发布时间】:2011-11-11 18:23:21
【问题描述】:

我正在使用 xmpp 进行网络聊天。目前我使用了长轮询,但这是最好的方法吗?服务器端是 PHP 的,用其他语言也许有更好的解决方案,但是用 PHP?

【问题讨论】:

  • 原生 HTML5 WebSocket(如果浏览器支持);)

标签: php chat polling


【解决方案1】:

这是一个相当普遍的争论,并且有很多答案,具体取决于您的服务器功能和许可限制。

基本上,现在简短的回答是一个库,比如 Node.js——它基本上为您处理客户端-服务器关系问题(确定 Web 套接字的可用性、闪存和回退到 AJAX 长轮询)。

长答案是,就目前的浏览器采用状态而言,您必须考虑许多不同的意外情况——我是否需要一种技术,我是否想排除某些群体,开发是否具有成本效益X、Y 和 Z 组的解决方案?然后,为了在服务器端实现最高效率的所有可能性,您需要提供某种类型的套接字服务器,然后在客户端提供 AJAX、Flash 和 Web 套接字(甚至可能是 Java 来捕获最后 1%)。归根结底,它归结为值得支持谁(在企业环境中,您了解最终用户的整体能力,并且可以坚持使用一种协议;开放网络,您不能做出同样的假设)。

【讨论】:

  • 您好,谢谢您的回答,但是如果我使用 Node.js,那么我需要在 node.js 中编写我的应用程序,还是我遗漏了什么?
  • 本质上,Node.js 是“服务器端 javascript”。在此处查看带有 PHP 的 Node.js 示例:thechangelog.com/post/1422032099/…
【解决方案2】:

您可以使用web socketsserver-side-events但这些技术只适用于现代浏览器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-28
    • 2013-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-02
    相关资源
    最近更新 更多