使用 websocket:
server { listen 443 ssl http2; ............
} location / { ............ proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } ......... }
使用 http 1.1
server { listen 443 ssl http2; ............
} location / { ............ proxy_http_version 1.1; proxy_set_header Connection ""; } ......... }
上面两种应该都对吧?是不是第一张反代时候访问用 websocketgeng'h 更好,1M 小水管想尽可能快一点。
1 thinkershare 2023-04-02 22:06:09 +08:00 是使用 Web Socket 时候必须使用第一种方式,第二种用 Web Socket 连接会失败的。 |
![]() | 2 liuyinltemp OP @thinkershare 就是简单反代,性能上有区别吗? |
3 richangfan 2023-04-02 22:49:59 +08:00 http 和 websocket 数据报文都不一样,不兼容的 |
4 star7th 2023-04-02 22:58:31 +08:00 如果你想大量转发什么数据,确实使用 websocket 协议性能更好 |
5 star7th 2023-04-02 22:58:59 +08:00 但是 1M 的带宽,物理上限就在那里了,再怎么折腾都不会差多少。 |
![]() | 6 des 2023-04-02 23:09:42 +08:00 via iPhone 如果我没记错的 websocket 和 h2 不兼容。另外不知道你要做什么,总感觉你这么对比有点怪 |
![]() | 7 ryd994 2023-04-02 23:16:20 +08:00 via Android websocket 不是 http 的平行代替,更不是 http 的承载载体 而是 websocket 让 http 可以双向传输数据。或者说 http 是 websocket 的载体 即使是 1 的情况,如果网站本身没有用到 ws ,那结果和 2 是一样的 |
![]() | 8 liuyinltemp OP @ryd994 源站没有 websocket ,那确实没啥意义 |
![]() | 9 gotosre 2023-05-28 18:33:28 +08:00 不同的, 取决于 upstream 是啥协议啊 |