
1 LeegoYih 341 天前 性能瓶颈在数据库,ws 开销不大,普通配置服务器建立几万个连接没什么问题。 |
2 cF06myaQ57WHKMBv 341 天前 B 方式,第三方的 ws 应该共用一个链接就可以了,所以只用关心客户端的连接数,客户端不多的话,性能应该不是问题 |
3 lisxour 341 天前 那必须是 b 啊 |
4 tubinorg 341 天前 你可以认为 ws 就是 http 的 tcp 没有断开( http 升级),一直保持连接,所以基本一样 可以在逻辑处理上断开,比如心跳,无请求数据,主动断开这个 tcp |
5 iOCZS 341 天前 不需要双工的话,还可以 sse |
6 gongquanlin 341 天前 B ,A2 的轮询速度快反而压力更大; 之前用 php 实现的某接口,2 秒轮训一次,上线之后服务器 cpu 马上被打崩;后来换成 go 的 ws ,维持在 3%左右的 cpu 占用 |
7 guanzhangzhang 341 天前 server 一个 ws client ,订阅后把信息存库或者广播给所有前端 ws client 即可。 我最近就有个类似的,是前端 websocket client 连 ws server ,ws server 是我 go 写的,它包含是一个 tcp client 获取数据,前端页面可以控制和接收信息,最终由 tcp client 发出去。 |
8 skallz 341 天前 看数据即时性要求了,如果要求不高,就轮询完事,要求高的话,用 sse 喽 |
9 skallz 341 天前 @gongquanlin 一般都是要求五秒及以上才会考虑轮询,哈哈,不过这个时间间隔也足够满足绝大部分场景了,除非数据实时性要求非常高 |