Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将PHP与轨道连接_Php_Comet_Stomp_Orbited - Fatal编程技术网

将PHP与轨道连接

将PHP与轨道连接,php,comet,stomp,orbited,Php,Comet,Stomp,Orbited,在网上搜索了一个好消息,也问了你们我最好的选择是什么,我选择了。问题是,如果你需要一份关于Comet的好文档,你就找不到了。我已经安装了Orbited,它似乎工作得很好 基本上,我想经常检查数据库,看看是否有新的数据。如果有的话,我想把它推给我的客户并更新他们的主页,但我找不到任何好的、清晰的文档来解释如何不断地检查数据库,并将新信息推给Orbited,然后再推给客户。你们实现了吗 还有,有多少用户可以被轨道控制 有什么想法吗?您可以添加一个在数据库更改时向消息队列发送消息的。这是。或者,如果只

在网上搜索了一个好消息,也问了你们我最好的选择是什么,我选择了。问题是,如果你需要一份关于Comet的好文档,你就找不到了。我已经安装了Orbited,它似乎工作得很好

基本上,我想经常检查数据库,看看是否有新的数据。如果有的话,我想把它推给我的客户并更新他们的主页,但我找不到任何好的、清晰的文档来解释如何不断地检查数据库,并将新信息推给Orbited,然后再推给客户。你们实现了吗

还有,有多少用户可以被轨道控制

有什么想法吗?

您可以添加一个在数据库更改时向消息队列发送消息的。这是。或者,如果只是您的应用程序与数据库通信,您可以通过一个应用程序在应用程序内处理此问题,每当有人调用某个操作更改数据库中的某些内容时,都会通知队列


我不知道轨道刻度的好坏。

有一个参考表,用于跟踪源表的上次更新时间。为源表创建更新/删除/插入触发器,以更新引用表中的时间

comet脚本应该不断检查引用表中的时间变化。如果注意到更改,您可以读取更新的源表并将数据推送到客户机的主页。在循环中检查引用表更快,因为如果没有任何更改,MySQL将从其缓存中提供结果


很抱歉,我对Orbited了解不多。

我会使用STOMP协议与Orbited进行通信,并将数据推送到客户端。只要用PHP找到一个好的STOMP客户端就可以开始了

下面是一个使用STOMP的用例示例,尽管服务器端是用Ruby编写的:

我不知道PHP和Apache(如果您正在使用)是否是监控数据库更改的最佳套件。请阅读本文标题为“Orbited Server”的部分,以获取解释:


编辑:如果你想通过一个web服务器使用PHP,你需要向一个脚本发出一个请求,并且只能发出一个请求,该脚本启动监视并推出更改。如果脚本超时或失败,您需要启动一个新脚本。有点烦人:)一个更好、更干净的方法是,例如,使用twisted和python启动一个监视进程,完全与web服务器分离。

+1建议使用消息队列。数据库轮询解决方案不可扩展。AFAIK,Orbited已经在10k空闲客户端上进行了测试。检查“Michael Carter”上的最后一个条目