如何使网站实时响应外部事件


How to make a site be responsive to external events in real time?

我需要实现的是使网站在数据库表更新时自动更改。

在这里你可以确切地理解我的意思:http://youtu.be/Lwfv65Naa78

在上面的演示中,你可以观察到,当其他用户通过iPhone应用程序与网站互动时,网站会实时发生变化。

我想知道是否可以使用php和jquery来实现这一点,当然还有如何开始。

谢谢!

您可能需要查看以下项目(all-node.js):

  • http://meteor.com/
  • http://www.firebase.com
  • http://spacemagic.io/
  • http://derbyjs.com/

Faye、cometd、long polling、Bayeux、WebSockets都是有用的搜索术语。

基本上,你的代码会监听一个看起来像url的频道,比如:"/posts",这是由具有相同频道的服务器管理的。您的控制器代码将更新(可能是json)推送到通道,而正在侦听通道的javascript则使用json来更新页面。

想象一下,客户端上的ajax请求从未完成加载,而在服务器上,您一直在向正在下载ajax请求的页面写入。有点像"插座"。如果你一心想自己滚动,我会研究如何使用ajax进行流式传输,以及如何在php上刷新缓冲区。