Bot Node.js temps réel avec WebSocket : reconnexion et gestion d'erreurs

Pour toutes les discussions javascript, jQuery et autres frameworks
Répondre
Jeanb65
Messages : 9
Enregistré le : 09 mars 2026, 07:51

Bot Node.js temps réel avec WebSocket : reconnexion et gestion d'erreurs

Message par Jeanb65 » 19 mars 2026, 17:54

Salut à tous,

Je bosse en ce moment sur un petit projet perso en Node.js et j'aurais bien besoin de vos retours. L'idée c'est de développer un bot qui se connecte à plusieurs API publiques (données météo, scores sportifs en direct, ce genre de choses) via WebSocket, et qui envoie des alertes automatiques quand certaines conditions sont remplies.

Concrètement, j'ai un premier prototype qui fonctionne à peu près : je me connecte avec le module ws, je parse les données JSON qui arrivent, et je déclenche des notifications. Le souci, c'est que c'est pas du tout robuste pour l'instant.

Mes principales questions :

1) Reconnexion automatique : quand le serveur coupe la connexion ou que le réseau lag, mon bot plante. J'ai essayé de mettre un simple setTimeout dans le listener "close" pour relancer la connexion, mais ça crée des boucles infinies si le serveur est vraiment down. Vous utilisez quoi comme stratégie ? Exponential backoff ? Y a un pattern propre en Node pour ça ?

2) Gestion de plusieurs connexions simultanées : mon bot doit écouter 3-4 sources de données en parallèle. Pour l'instant j'ai tout dans le même fichier et c'est vite le bazar. Est-ce que vous conseillez de découper ça en EventEmitter séparés ? Ou peut-être utiliser des workers threads ?

3) Gestion d'erreurs : j'ai des cas où l'API renvoie du JSON mal formé ou des messages inattendus, et le try/catch autour du JSON.parse ne suffit pas toujours. J'aimerais avoir un truc plus global pour pas que tout le process crash à la moindre erreur.

4) File d'attente pour les alertes : quand plusieurs événements arrivent en même temps, j'aimerais les mettre dans une queue pour les traiter un par un. J'ai regardé du côté de bull ou bee-queue mais ça me paraît overkill pour mon besoin. Un simple tableau avec un setInterval ça suffirait ou c'est crade ?

A terme j'aimerais bien transformer ce système en robot de trading pour suivre des cours en temps réel et passer des ordres automatiquement, un peu dans le style de ce qu'on voit sur les plateformes de trading automatisé.

Si quelqu'un a déjà bossé sur un truc similaire, je prends tous les conseils. Même un bout de code pour la partie reconnexion ça m'aiderait déjà pas mal.

Merci d'avance !
Modifié en dernier par Jeanb65 le 25 mars 2026, 19:17, modifié 1 fois.

davismaria
Messages : 1
Enregistré le : Hier, 12:43

Re: Bot Node.js temps réel avec WebSocket : reconnexion et gestion d'erreurs

Message par davismaria » Hier, 12:44

Ton projet a l'air super ! Pour la reconnexion, utilise l'exponential backoff pour éviter les boucles infinies. Découpe ton code avec des EventEmitters pour gérer plusieurs connexions. Pour les erreurs JSON, un middleware peut aider à ne pas faire planter le bot. Pour la file d'attente, un tableau avec setInterval peut suffire au début, mais Bull pourrait être utile à long terme.
Drive Mad

Répondre