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