Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.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 如何实现服务器推送(推送技术)http或windows套接字_Php_Server Push - Fatal编程技术网

Php 如何实现服务器推送(推送技术)http或windows套接字

Php 如何实现服务器推送(推送技术)http或windows套接字,php,server-push,Php,Server Push,问题和描述经过编辑,使用户能够很好地理解我在获得4票后想要问的问题。 我有一个虚拟专用服务器 我有一个桌面应用程序,在其中我需要来自vps Web服务器的通知 如果需要,我可以将c和php作为服务器端脚本编写 我以为服务器推送机制可以做到这一点 那我该怎么办 我了解到,长时间打开的连接和保持活动将是服务器的一个负载 我知道c、win32 api、php、winsock和php套接字 这仅仅是一种编程技术,即所谓的推送技术吗 我在互联网上读了很多解释,但是non有一个线框式的解释,我不知道c,ph

问题和描述经过编辑,使用户能够很好地理解我在获得4票后想要问的问题。

我有一个虚拟专用服务器

我有一个桌面应用程序,在其中我需要来自vps Web服务器的通知

如果需要,我可以将c和php作为服务器端脚本编写

我以为服务器推送机制可以做到这一点

那我该怎么办

我了解到,长时间打开的连接和保持活动将是服务器的一个负载

我知道c、win32 api、php、winsock和php套接字

这仅仅是一种编程技术,即所谓的推送技术吗

我在互联网上读了很多解释,但是non有一个线框式的解释,我不知道c,php中的哪个库会这样做


我假设推送技术只是一种机制,使用任何编程语言(win32api、php)中的现有库(套接字)从远程位置获取即时通知。

如果不想使用开放连接,您有两种选择:

1) 您的计算机上有一个客户端应用程序,该应用程序经常检查服务器是否有新的通知


2) 您可以创建一个运行在桌面上的小通知服务器(比如node.js webserver之类的)。然后,服务器上有一个客户端应用程序,只要有通知,它就会连接到您的桌面。

Ranting(特别是在问题标题中)是让问题被否决和关闭的可靠方法。表现出一些专业精神。另外,问一个清晰的问题可以帮助你得到答案。我推荐阅读。@Jayapal:我同意奥德的观点。你应该修正你的问题标题这不是一个关于程序的问题,这是一个关于架构的钓鱼探险,而且是一个特别烦躁的问题。如果您想连接到web服务器,您必须使用HTTP协议。要么进行轮询,要么使用无法关闭的连接。很简单。如果您在web浏览器中工作,也会遇到同样的情况,除非您想限制浏览器并编写插件。如果这些不适用,提出你自己的方案。我已经更改了问题的标题和问题的主体,以及人们现在将如何理解。我一直在做第一点一样的事情。。。那很好。关于第二点,我想知道我们是否可以从远程服务器(Web服务器)直接连接到最终用户系统。。。防火墙是否会进行一些阻止是的,您很可能会遇到防火墙问题。但是,如果您希望外部系统将通知推送到您的桌面,而不需要频繁获取或打开连接,那么您唯一的选择就是这样。至少通过TCP/IP网络,如Internet。据我所知,MSN和Skype等其他应用程序使用开放连接。。。有趣的所以这就像http中的keepalive。。。一个可以随时接收信息的开放连接。。。让我试试。。。这需要一些时间。。。然而你不一定需要一个普通的HTTP连接。对于双重通信,您也可以尝试websocket。它最近已经成为RFC标准,并且在大多数主流浏览器中都得到支持。或者,检查socket.io