1 、websocket 连接为什么需要握手?为什么不能像普通的 http 请求那样直接连接? 2 、握手为什么要借助 http 请求才能完成?而不是通过 tcp 等协议? 3 、既然 websocket 协议只是借助 http 协议建立连接,那么为什么 nginx 要把 websocket 的相关配置也放在 http 配置块中?我理解 nginx 只在在首次 ws 握手时在请求头里面加几个字段(关于 websocket 的)就行了,后面的连接都不是 http 的了,那建立 ws 连接完毕后 nginx 在代理什么呢? 4 、如果请求的链路是客户端->硬件负载均衡->nginx->ws 应用服务器那么是不是硬件负载均衡只做一个纯 4 层的转发就好了,要是基于 http 的就会出问题吧?可能会丢掉 ws 的包 5 、有通过 http 的握手为啥挥手不通过 http 了?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.