Prompt pour implémenter des WebSockets en temps réel
Prompt complet pour concevoir et implémenter une architecture WebSocket temps réel avec gestion des connexions, authentification, scalabilité et monitoring.
Coller dans votre IA
Collez ce prompt dans ChatGPT, Claude ou Gemini et personnalisez les variables entre crochets.
Tu es un développeur backend expert en communication temps réel. Conçois une architecture WebSocket complète pour une application de [TYPE_APPLICATION] utilisant [TECHNOLOGIE_BACKEND] côté serveur et [TECHNOLOGIE_FRONTEND] côté client.
Spécifications techniques à couvrir :
-
Configuration du serveur WebSocket :
- Mise en place du serveur avec gestion des origines autorisées
- Middleware d'authentification sur la connexion (JWT ou session)
- Gestion du heartbeat/ping-pong pour détecter les connexions mortes
-
Gestion des connexions :
- Système de rooms/channels pour segmenter les flux
- Pool de connexions avec identifiants utilisateur
- Reconnexion automatique côté client avec backoff exponentiel
- Gestion propre de la déconnexion (cleanup des ressources)
-
Protocole de messages :
- Format standardisé des messages (type, payload, timestamp, id)
- Validation des messages entrants avec schéma
- Système d'acknowledgment pour garantir la réception
- File d'attente pour les messages envoyés pendant une déconnexion
-
Scalabilité :
- Stratégie pour plusieurs instances serveur (Redis pub/sub ou similaire)
- Gestion de la montée en charge ([NOMBRE_CONNEXIONS_SIMULTANEES] connexions simultanées)
- Rate limiting par utilisateur
-
Sécurité :
- Protection contre les attaques par flooding
- Validation et sanitization de tous les messages
- Timeout d'inactivité configurable
- Limitation de la taille des messages
-
Monitoring et debug :
- Logging structuré des événements de connexion/déconnexion
- Métriques (nombre de connexions actives, latence, messages/seconde)
- Endpoint de health check
Fournis le code complet côté serveur et côté client avec des commentaires expliquant chaque section. Inclus un exemple de test d'intégration pour valider le flux de connexion et d'échange de messages.
Personnaliser ce prompt avec Léa
Réponds à 3 questions, Léa adapte le prompt à ta situation.
Pourquoi ce prompt fonctionne
<p>Ce prompt guide l'IA pour produire une architecture WebSocket <strong>production-ready</strong>. Il couvre les six piliers essentiels d'une implémentation temps réel robuste : configuration serveur, gestion des connexions, protocole de messages, scalabilité, sécurité et monitoring. Chaque section est suffisamment détaillée pour éviter les réponses superficielles.</p><p>Pour l'utiliser efficacement, remplacez <strong>[TYPE_APPLICATION]</strong> par votre cas concret (chat, dashboard, jeu multijoueur, notifications), <strong>[TECHNOLOGIE_BACKEND]</strong> et <strong>[TECHNOLOGIE_FRONTEND]</strong> par votre stack (Node.js/Socket.io, Python/FastAPI, Go/Gorilla, etc.), et <strong>[NOMBRE_CONNEXIONS_SIMULTANEES]</strong> par votre cible de charge. Plus ces variables sont précises, plus le code généré sera adapté.</p><p><strong>Conseil avancé</strong> : après avoir obtenu l'implémentation de base, relancez le prompt en ajoutant des contraintes spécifiques comme <ul><li>la gestion de la présence utilisateur (qui est en ligne)</li><li>le support du mode hors-ligne avec synchronisation</li><li>l'intégration avec un broker de messages existant (RabbitMQ, Kafka)</li></ul> pour itérer vers une solution complète adaptée à votre contexte.</p>
Cas d'usage
Résultat attendu
Code serveur et client complet avec configuration WebSocket, gestion des rooms, protocole de messages typé, reconnexion automatique, authentification, et tests d'intégration. Le tout commenté et structuré pour une mise en production.
Améliorez ce prompt
Passez ce prompt dans l'Optimiseur pour renforcer le contexte, les contraintes et le format attendu.
Améliore ce prompt avec l'OptimiseurCommentaires
- LéaIA
Pour fiabiliser l'acknowledgment, ajoutez un compteur de séquence côté client et serveur. Le client inclut `seq` dans chaque message ; le serveur retourne l'ack avec ce `seq`. En cas de reconnexion, le client demande le dernier `seq` reçu, ce qui permet de retransmettre uniquement les messages manquants et d'éviter les doublons (exactly-once delivery).
Termes du glossaire
📬 Recevez de nouveaux prompts chaque semaine
Rejoignez notre newsletter et ne manquez aucun prompt.
Pour aller plus loin
Prompts similaires
Prompt pour maîtriser les types avancés en TypeScript
Un prompt pour générer des types TypeScript avancés (generics, mapped types, conditional types) avec documentation et tests de types intégrés.
Test d'idées d'activation
Générer des idées d'expériences d'activation
Network policies pour micro-segmentation
Isoler les workloads avec des network policies
Stratégie de rollout progressif
Déploiement progressif d'un nouveau modèle