如何使用PHP实现真正快速的web聊天?

如何使用PHP实现真正快速的web聊天?,php,ajax,facebook,chat,web,Php,Ajax,Facebook,Chat,Web,如何使用PHP实现真正快速的web聊天 有人想过为什么Facebook聊天这么快吗?即使在没有WebSocket的IE中 在JS中设置Interval来检查新消息不是唯一的方法吗?但我觉得它(Facebook聊天室)就像是有了即时反应 如何用PHP实现如此伟大的事情?您所描述的即时聊天通常是通过一种称为“长轮询”的方式实现的,或者,如果我们谈论的是AJAX,“Comet”(关于它)。轮询往往会使Apache服务器感到紧张,但有一些专门的服务器可以像这样处理它。我不确定,但我认为你也可以做同样的事

如何使用PHP实现真正快速的web聊天

有人想过为什么Facebook聊天这么快吗?即使在没有WebSocket的IE中

在JS中设置Interval来检查新消息不是唯一的方法吗?但我觉得它(Facebook聊天室)就像是有了即时反应


如何用PHP实现如此伟大的事情?

您所描述的即时聊天通常是通过一种称为“长轮询”的方式实现的,或者,如果我们谈论的是AJAX,“Comet”(关于它)。轮询往往会使Apache服务器感到紧张,但有一些专门的服务器可以像这样处理它。我不确定,但我认为你也可以做同样的事情,并且很好地处理压力

这里有一篇关于如何使用PHP jQuery和AJAX实现长轮询聊天的文章


祝你好运,我希望这对你有帮助

我同意@joseph szymborski的观点,尽管开始研究WebSocket解决方案是有意义的,它可以通过Flash和/或长轮询回退到WebSocket

以下是一些相关的SO问题:

  • -PHP/jQuery
  • -PHP/Ajax
  • -问题本身很好
  • -与你的问题相关

如果您想使用PHP或共享主机,那么我建议您看一下.< /p> 您可能想考虑NoDE.js在“实时”中为客户服务,因为长期使用PHP/AJAX轮询可能会在服务器上造成压力。 但实施本身是一项艰巨的任务。只是说说而已。 使用PHP/AJAX进行长时间轮询可能会给服务器带来压力

我的典型理论实现是相同的:

  • 创建Node.js服务器以查询数据库
  • 使用cURL将变量和/或会话数据从php发送到节点js
  • 解析Node.js服务器中的url并使用变量进行检查 用于数据库中的更改
  • 如果发生更改,则发出新数据并发送到客户端

  • 它们使用如下内容:。右括号未成为某些链接的一部分reason@SimpleCoder即使他们使用comet,也可能进行某种AJAX轮询。