使用EventSource建立连接后,多开标签页页面卡死,如何解决?

使用EventSource建立连接接收后端推送的数据,但是多开标签页后(约3-4个)新的标签页页面卡死,请求都在pending,应该是因为到了浏览器连接数的上限了,要如何解决这个问题呢?

是不是使用websocket就不会有这个问题?


回答:

推荐一个办法,使用Broadcast Channel API在不同的 tabs 之间进行通信,控制订阅的 tab 数量。

比如已经有1个新的tab建立了链接,就将之前的tabs链接关闭。


回答:

浏览器连接数的上限

  1. https2 没这个问题了
  2. 或者使用多域名来分担


回答:

如果多开页面是比较重要的需求,可以考虑把这部分请求放到 service worker 里。

  1. service worker 可以同域共享
  2. 只需要维持一个连接,也方便你管理
  3. 相比于 websocket,后端和基建都不用修改

以上是 使用EventSource建立连接后,多开标签页页面卡死,如何解决? 的全部内容, 来源链接: utcz.com/p/934271.html

回到顶部