如何在您的网站中使用长轮询或Ajax推送

我想知道如何使用ajax推送。 我从各种Web文章中了解到,通过使用COMET,APE(AJAX PUSH ENGINE)等少数程序可以获得Ajax推送….但我想知道是否有更简单的使用方法和使用的语言实现ajax推送。 因为在我看过的文章中。 他们正在使用java。 我没有学习:(所以我想知道是否有类似的东西:你的服务器中的javascript设置一个特定项目的间隔,然后如果发现任何更改然后使用PHP回显它。?请帮助我为此。它已经过了一个星期,我试图实现这一点。我试图通过使用正常的ajax和php来使用间隔但无法得到结果。谢谢.PS:请给我一个简单的方法来使用它的例子或者其他的东西。

我前段时间使用过基于flash的非常简单的方法

我在我的页面上添加了一个1px * 1px透明闪存,它打开了我的AJAX发送请求的服务器的套接字。 服务器接收AJAX请求并在闪存套接字上响应

flash只是打开一个调用onreceive事件处理程序的javascript:url,因此你不会打开一个新页面,而是在当前页面上运行javascript

如果你想使用PHP作为你的后端技术,那么这将是一场艰难的斗争。 阅读有关并发的这个问题- 如何在PHP中实现事件监听以获取更多信息。

在我看来,PHP开发人员最简单的解决方案是使用像Pusher这样的托管实时服务 – 我为之工作。 这意味着您无需担心实时Web基础结构的安装或维护,最重要的是,您无需担心服务器处理持久并发连接。 您使用Pusher JavaScript库从Web浏览器连接到Pusher,维护持久连接并接收推送到它的任何更新,并使用Pusher REST API将数据从PHP应用程序(通过Pusher)发布到连接的客户端。

Nettuts +上的Pusher指南已经开始使用 ,它非常受欢迎,对于任何使用PHP的人来说都是一个很好的起点。

如果你真的想在PHP上托管你自己的实时基础设施(不要说我没有警告过你)那么你可以看看如何使用Comet和PHP WebSockets 实现PHP (github上还有一个项目,最近的活动称为php -websocket-server )。