Je pense qu'une solution possible comme trouvé dans un docs.microsoft.com article
https://docs.microsoft.com/en-us/aspnet/signalr/overview/guide-to-the-api/handling-connection-lifetime-events#timeoutkeepalive
Dans certaines applications, vous pourriez vouloir rétablir automatiquement une connexion après qu'elle a été perdue et que la tentative de reconnexion a expiré. Pour ce faire, vous pouvez appeler la méthode Start à partir de votre gestionnaire d'événements Closed (gestionnaire d'événements déconnecté sur les clients JavaScript). Vous pouvez attendre un certain temps avant d'appeler Démarrer afin d'éviter de le faire trop souvent lorsque le serveur ou la connexion physique sont indisponibles.
en Javascript
$.connection.hub.disconnected(function() {
setTimeout(function() {
$.connection.hub.start();
}, 25000); // Restart connection after 25 seconds.
});
vous pouvez donc utiliser quelque chose comme ça et essayer d'augmenter le paramètre de temps pour reconnexions pas si fréquents