12 votes

Intervalles d'interrogation du serveur pour un client de chat en javascript

Je suis en train de créer une petite boîte à lettres/chat AJAX pour mon site Web, mais je ne sais pas exactement comment mettre en œuvre l'interrogation du serveur.

Voici le déroulement du programme de base auquel je pense :

  1. L'utilisateur arrive sur la page et voit les 10 derniers messages.
  2. Pour obtenir des messages envoyés par d'autres personnes, le client javascript demande une URL avec un paramètre d'horodatage (fixé à la valeur du dernier message reçu par le client).
  3. Le serveur renvoie tous les messages (jusqu'à un maximum de 10) depuis cet horodatage.

Le seul problème est de savoir à quelle fréquence il faut interroger le serveur. Il est évident qu'il devrait interroger le serveur à chaque fois qu'un nouveau message est ajouté, mais lorsque vous ne faites que lire les messages des autres, il doit être mis à jour automatiquement.

Devrait-il s'agir d'une limite de temps fixe ? par exemple : toutes les 10 secondes. Ou bien, doit-il varier en fonction de l'utilisation ? ex : Vérifier après 5 secondes. S'il n'y a pas de messages, ne pas vérifier avant 10 secondes. S'il n'y a toujours pas de nouveaux messages, vérifier après 15 secondes, puis 20, jusqu'à peut-être une fois toutes les 30 secondes maximum. Chaque fois qu'un nouveau message est détecté, remettez votre minuteur à 5 secondes et recommencez.

Je crains simplement de soumettre le serveur à un stress inutile, étant donné que des centaines d'utilisateurs pourraient être en ligne simultanément.

...ou est-ce que j'ai tout faux ? Existe-t-il une meilleure façon d'implémenter un chat javascript de base ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X