Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.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
HTML5WebSockets是php开发的理想平台_Php_Html_Websocket_Platform_Fallback - Fatal编程技术网

HTML5WebSockets是php开发的理想平台

HTML5WebSockets是php开发的理想平台,php,html,websocket,platform,fallback,Php,Html,Websocket,Platform,Fallback,我们正计划构建一个庞大的web应用程序,提供实时数据更新和显示(如股票市场)。需要高效的服务器-客户端双向通信。经过研究,HTML5Web套接字似乎是必须的。但是,在兼容性、回退以及服务器支持方面存在一些问题。我们需要一个简单而稳定的php和apache集成解决方案。我们用phpwebsockets和pywebsockets进行了一些测试,但它们似乎不太稳定。作为一个更稳定的、经过测试的解决方案,您会提出什么建议,像kaazing,但可能是php?提前感谢您。nodej有两个原因: 1:您可以在

我们正计划构建一个庞大的web应用程序,提供实时数据更新和显示(如股票市场)。需要高效的服务器-客户端双向通信。经过研究,HTML5Web套接字似乎是必须的。但是,在兼容性、回退以及服务器支持方面存在一些问题。我们需要一个简单而稳定的php和apache集成解决方案。我们用phpwebsockets和pywebsockets进行了一些测试,但它们似乎不太稳定。作为一个更稳定的、经过测试的解决方案,您会提出什么建议,像kaazing,但可能是php?提前感谢您。

nodej有两个原因:

1:您可以在客户机和服务器上使用相同的语言,因此可以更多地重用代码

2:内置的事件循环使javascript非常适合“做一点工作,然后睡眠20秒”的情况

不过,你必须热爱javascript才能在服务器上使用它。

你尝试过COMET吗

web上有很多COMET+PHP应用程序示例


我可能会选择Node.js。虽然我喜欢javascript,但我不喜欢Node.js酷炫的助手。(公平警告…)


但是Node.js允许您使用Socket.io,这就是您想要使用的,以使您的实时通信在“所有”系统上无缝工作。PHP和Node.js之间的通信可以通过套接字、数据库或其他一些疯狂的东西来处理

WebSockets没有得到很好的支持,而且没有稳定的php实现

您是否考虑过使用长轮询/COMET?它可以跨所有浏览器工作。

您想要使用的是,它可以解决所有跨浏览器问题,并为较旧的浏览器提供无缝的回退。Socket.IO被设计为与Node.js一起使用,但现在可以与许多节点一起使用

但是,我不推荐在PHP中使用Web套接字。因为PHP不是为长时间运行的双向通信而设计的,它会导致整个Apache进程/线程在每个新连接中锁定


我强烈建议在服务器端使用Node.js这样的语言,它可以轻松处理数千个长时间运行的连接,而不会出现任何问题。

我也更喜欢nodejs,但他需要一些易于与php和apache兼容的语言。也许也要运行一个节点服务器,给他的项目增加这么多的复杂性作为一个PHP开发人员,我觉得有义务承诺:
使用合适的工具来完成这项工作
。PHP不是适合这项工作的工具。(并不是说Node.js也是,但与PHP相比,它更适合Socket.io)除此之外,我可能会建议您正确使用它,并用Erlang编写一些东西。(是的,这是拖拉,一点帮助都没有。但对于这一点,PHP本身就像是滥用螺丝刀来敲打锤子)我在生产中看到的comet+PHP应用程序比nodejs+socket.io应用程序多。我认为Nodejs和socket.io太“年轻”(