¿Cómo se comparte una única conexión WebSocket en varias pestañas del navegador?
Soy consciente de varias preguntas/publicaciones que sugieren SharedWorker. Sin embargo, no es una solución viable debido a la mala adopción de SharedWorker (solo el 35 % a nivel mundial según Can I use en el momento de escribir este artículo), sin mencionar que se ha eliminado en Safari.
Implementé una versión de trabajo usando SerivceWorker, que tiene la capacidad de SharedWorker, para compartir una sola conexión entre pestañas. Desafortunadamente, durante las pruebas me di cuenta de que el navegador puede eliminar/detener ServiceWorker, especialmente cuando la herramienta de desarrollo no está abierta. También conozco algunas soluciones para evitar este comportamiento, como hacer ping a ServiceWorker periódicamente . Me gustaría preguntar si hay una forma adecuada de manejar esto.