PHP中的Web应用程序的实时协议

时间:2010-10-04 23:06:31

标签: php protocols real-time sync

我正在开发一个PHP应用程序,我正在寻找一些可用于实时协议的想法:

1)跟踪用户在应用程序中的状态和位置(这应该很快!!!) 2)聊天系统。

我正在寻找像FMS及其“共享对象”这样的东西,其中多个用户可以订阅信息。 FMS价格昂贵,而且我需要的速度很慢,我需要在每个页面上加载一个小部件,请求与FMS服务器建立新连接等等....慢...

我需要快速的东西,开源会很完美!类似Google Waves用于同步共享文档的内容。

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

你需要websockets或类似的东西。

http://www.orbited.org/

“Orbited允许您编写实时Web应用程序,例如聊天室或即时消息客户端,而无需使用Flash或Java等外部插件。它支持JavaScript的流式网络,无需加载条形图或页面刷新。”

您可以使用Orbited将聊天实现为IRC或Jabber。

答案 1 :(得分:2)

如果您愿意用PHP编写,我会说您正在查看错误的技术。 PHP和实时有两个主要问题。

  • 运行PHP应用程序时,它不像Servlet with Java那样持久。很难并且不适合在每个连接之间进行通信。您必须使用数据库存储,流或文件在每个实例之间发送数据。所有这些方法效率都不高。

  • 它正在使用阻塞I / O,这就是性能和可伸缩性方面的痛苦。

您应该查看Web服务器的非阻塞I / O技术。它们都是事件驱动的服务器,与PHP方法不同。以下是一些例子: