Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.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_.net_Javascript_Jquery_Ajax - Fatal编程技术网

Php 服务器到客户端推送?

Php 服务器到客户端推送?,php,.net,javascript,jquery,ajax,Php,.net,Javascript,Jquery,Ajax,当我搜索这个时,我一直在得到comet,但comet似乎对我的需求来说很复杂,即最多100个用户,一次可能有10个用户在线 是否有更好的解决方案满足我的要求,即能够将数据推送到客户端,一次最多可以推送到10-20个客户端。没有。当您考虑到NAT遍历、防火墙和客户端安全限制方面的所有问题时,剩下的唯一解决方案是让客户端启动HTTP请求并等待将“推”回数据的响应。Ie..您可以使用一种短轮询方法,客户端每秒请求一次新数据,然后服务器在有数据时发回数据。客户机需要存储上次更新数据的id或时间跨度,然后

当我搜索这个时,我一直在得到comet,但comet似乎对我的需求来说很复杂,即最多100个用户,一次可能有10个用户在线


是否有更好的解决方案满足我的要求,即能够将数据推送到客户端,一次最多可以推送到10-20个客户端。

没有。当您考虑到NAT遍历、防火墙和客户端安全限制方面的所有问题时,剩下的唯一解决方案是让客户端启动HTTP请求并等待将“推”回数据的响应。Ie..

您可以使用一种短轮询方法,客户端每秒请求一次新数据,然后服务器在有数据时发回数据。客户机需要存储上次更新数据的id或时间跨度,然后不断询问服务器是否有更新的数据


既然你说你没有很多用户,我认为这种方法是最简单、最容易实现的。

我也认为Comet/bayeux可能有点太复杂了,但simple应该可以完成这项工作


您可以将其用作某种阻塞等待。

如果您没有与Internet Explorer结婚,则至少有一台WebSockets服务器。这将处理Webkit浏览器(Chrome和Safari)和Firefox 4,但会让IE用户束手无策,或者至少局限于拉式技术(AJAX/AJAJ)。

您在这里使用的是什么?您同时列出了PHP和.Net,这是一种混合,并且两者都可以使用吗?一些通用的技术,即可以同时使用.Net和PHP的技术将是最好的,但在这种状态下.Net更重要,因为我正在为我们的intranet环境开发。我们的.Net支持的intranet有一个IIS服务器。comet是否可以在上面实现,或者comet是否需要自己的独立服务器?“comet”是一个涵盖许多技术的总称。长轮询可以在任何平台上实现。没有“comet服务器”这样的东西。没错,但IIS的可扩展性不太好。我将尝试使用Nginx()。必须使用异步处理程序:您知道任何ajax长轮询教程吗?Stackoverflow.com已经有一个主题解释了简单的长轮询: