为了兼容之前的已充分支持 HTTP 的网络设施,WebSocket 连接建立是通过 HTTP 协议完成的。使用 WebSocket 通信的两端利用 HTTP 协议升级机制,从 HTTP 协议切换到 WebSocket 协议。切换前后的通信都在同一个 TCP 连接上完成。
在服务端,http 服务完成 WebSocket 握手后,会交出 socket 控制权,由 WebSocket 服务来进行后续处理。一些老的 HTTP 服务程序和反向代理程序不懂得如何处理 WebSocket 握手和后续的 WebSocket 通信,则无法依赖它们实现 WebSocket 通信。
laravel 可以使用laravels,laraveltw使用swoole加速。