【发布时间】:2013-02-03 05:12:48
【问题描述】:
我正在为我的网站制作通知系统。我希望登录的用户在收到通知时立即注意到。正如许多人所说,只有几种方法可以做到这一点。
有人正在编写一些 javascript 代码来询问服务器“是否有任何新通知?”在给定的时间间隔内。它被称为“轮询”(我应该是对的)。
另一个是“长轮询”或“彗星”。正如维基百科所说,长轮询类似于轮询。无需每次都询问新通知,当有新通知可用时,服务器将它们直接发送给客户端。
那么我如何在 PHP 中使用长轮询? (不需要完整的源代码,但需要一种方法) 它的架构/设计到底是什么?
【问题讨论】:
-
while (!$response) { $response = do_something(); sleep(1); } echo $response; -
有趣的问题,正是我要找的问题。我将悬赏 +50
-
我认为对于某些网络服务器来说,长轮询可能是一个问题(不过自从我读到任何关于它的东西以来已经很久了)。太多打开的连接等。
-
@NickSlash 有什么问题?长轮询不是一个好方法吗?
-
长轮询并没有什么问题,它只是传统的网络服务器不是为了做到这一点而设计的。 @louis-philippe-huberdeau 的回答解释了这一点。
标签: php javascript ajax long-polling polling