使用EventSource建立连接后,多开标签页页面卡死,如何解决?
使用EventSource建立连接接收后端推送的数据,但是多开标签页后(约3-4个)新的标签页页面卡死,请求都在pending,应该是因为到了浏览器连接数的上限了,要如何解决这个问题呢?
是不是使用websocket就不会有这个问题?
回答:
推荐一个办法,使用Broadcast Channel API在不同的 tabs 之间进行通信,控制订阅的 tab 数量。
比如已经有1个新的tab建立了链接,就将之前的tabs链接关闭。
回答:
浏览器连接数的上限
- https2 没这个问题了
- 或者使用多域名来分担
回答:
如果多开页面是比较重要的需求,可以考虑把这部分请求放到 service worker 里。
- service worker 可以同域共享
- 只需要维持一个连接,也方便你管理
- 相比于 websocket,后端和基建都不用修改
以上是 使用EventSource建立连接后,多开标签页页面卡死,如何解决? 的全部内容, 来源链接: utcz.com/p/934271.html