Abd*_*rai 9 javascript php apache websocket node.js
我是WebSocket世界新手,即使一周后,我还是找不到如何在PHP 不使用任何第三方图书馆的情况下使用它.或者不确定它是否可能.
我有3个问题,
1)我们是否必须使用一些第三方API或Libchet,PHP-Push-WebSocket或PHP WebSocket等库来使PHP能够通过WebSocket协议进行通信?
2)如果您对上述问题的回答是肯定的,那么使用Apache的优势/目的是mod_proxy_wstunnel什么?
3)如果我使用任何PHP WebSocket第三方库,那么我还需要启用和使用Apache mod_proxy_wstunnel吗?如果否,那么Apache的mod_proxy_wstunnel的目的又是什么?
我在Apache mod_proxy_wstunnel后面经历了这个使用go-websocket.在这个问题中,OP指出了一些go-websocket但不幸的是链接正在给出404错误,因此我无法理解用户是否使用了任何第三方API.
任何帮助将受到高度赞赏.提前致谢.
PHP不是为WS创建的.当然,你可以做到这一点,但它是完全的while (true) 和fsock_open [*] .并且您必须有权访问shell以使用php-cgi运行WS-server.(通常)
选择支持线程/异步通信的语言.现在,顶部是Node.js的.此外,更好地使用专用库来支持旧版浏览器等.如果您正在考虑使用ajax的替代方法,那么您可以使用socket.io.如果您想创建一对一通信(例如聊天,广播消息),请更进一步使用其中一个Bayeux实现,例如:Faye.
该mod_proxy_wstunnel扩展为WS服务器添加了一个额外的层.根据配置,它可以支持DDoS,队列,负载平衡,本地端口交换和https支持.但最好将此用于nginx.
因此,对于您不需要的测试mod_proxy_wstunnel,在生产中,您应该添加额外的安全层,例如NGINX ws tunelling.
[*]抱歉,我犯了一些错误.PHP对WebSockets有本机支持.该内容将使您在PHP中对WS产生负面影响.
Websockets是事件,PHP使用它很难管理.