Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.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 nginx_http_push_模块和数据库_Php_Database_Nginx_Comet_Push - Fatal编程技术网

Php nginx_http_push_模块和数据库

Php nginx_http_push_模块和数据库,php,database,nginx,comet,push,Php,Database,Nginx,Comet,Push,我是nginx的新手,我正在使用nginx作为nginx_http_push_模块的comet服务器 我有两个问题: 1、如何将nginx_http_push_模块接收到的消息保存到数据库中 2、如何获取频道的侦听器列表 谢谢~ 1、如何将nginx_http_push_模块接收到的消息保存到数据库中 您必须在服务器端订阅您感兴趣的频道,并在每条消息到达时将其存储在数据库中 例如,您可以在PHP中使用重复长轮询通道(您必须设置适当的超时和正确的缓存头:如果不匹配,并且如果从那时起进行了修改) 2

我是nginx的新手,我正在使用nginx作为nginx_http_push_模块的comet服务器

我有两个问题:

1、如何将nginx_http_push_模块接收到的消息保存到数据库中

2、如何获取频道的侦听器列表

谢谢~

1、如何将nginx_http_push_模块接收到的消息保存到数据库中

您必须在服务器端订阅您感兴趣的频道,并在每条消息到达时将其存储在数据库中

例如,您可以在PHP中使用重复长轮询通道(您必须设置适当的超时和正确的缓存头:如果不匹配,并且如果从那时起进行了修改)

2、如何获取频道的侦听器列表

旁注:l非常简单,这是而不是。此模块中的订户/侦听器只是订户URL上的活动HTTP连接。例如,如果使用而不是长轮询,则在建立连接期间(非常)短的时间内,您将被视为订户

这就是为什么一个频道的侦听器列表在这个模块中没有多大意义


但是,您可以通过向发布URL发出get请求来获取频道的活动订阅者数量,但我严重怀疑您是否能够做到这一点。

1-nginx不会从客户端接收任何消息,只会从发布URL处的应用程序接收到消息,而该应用程序应该受到保护

2-您可以使用body.onload和unload实现一些javascript技巧,例如创建聊天用户列表