为什么您需要为websocket使用第三方服务器



我看到了这个答案,为什么我需要第三方服务器来处理WebSocket关于使用第三方服务来处理WebSSocket,但我不明白Laravel本身不是WebSocket服务器的含义,当使用类似pusher的服务时,我的服务器和pusher之间的连接是通过HTTP的,而pusher和客户端之间的连接则是通过WebSocket的

WebSocket服务器使用UDP向客户端广播事件,因此您需要无限循环来处理来自服务器和客户端的传入事件。

然而,Laravel是为PHP设计的,在PHP中,通过HTTP(即TCP(为每个传入请求创建新的守护进程您可以在应用程序中触发一些事件,并通过TCP将其发送给套接字服务器,然后套接字服务器将通过UDP向所有客户端广播

在像Node.JS这样的PHP中混合使用是不太舒服的,在Node.JS中,您可以在一个进程中完全访问web服务器。这就是为什么您需要使用Laravel的WebSockets的外部进程。它可能是同一台服务器,但套接字需要使用UDP,仅此而已。

附言:术语";第三方服务器";在这种情况下,可能是因为PHP应用程序在很多情况下托管在虚拟主机上,而不是直接托管在服务器上。通常情况下,宿主不会让你产生长时间停留的过程。

相关内容

  • 没有找到相关文章

最新更新