[AJAX] Optimisation de charge, liée à une requete récurente
Bonjour,
Tout d'abord je ne suis pas certain de poster sur le bon Forum, j'ai hésité avec le forum dédié au Javascript. Mais comme j'utilise de l'Ajax j'ai choisi ce forum ci, J’espère que je ne me suis pas planté.
Ors donc, je suis actuellement entrain de tenter de développer un petit chat en navigateur tout simple.
Le seul objectif que je me soit fixé comme indispensable est de ne jamais rafraichir toute la page, seulement la zone ou sont afficher les messages. Et ça marche bien, mais j'ai un problème sur le fond.
Pour rafraichir la zone des message j'effectue une requête toutes les 1 secondes à mon contrôleurs pour lui demander si il n'y à pas un nouveau message. Lui même fait une requête à la base de donnée.
Bref ça sature tout d'un bout a l'autre, c'est immonde, et je suis sur qu'on peut faire autrement.
J'ai penser à faire en sort que la requête AJAX envois l'id du dernier message qui est afficher, et que le contrôleur ne réponde rien tant qu'il n'y a pas de nouveau message à afficher. On va dire que cet requête sera relancer toutes les 5 minutes.
Cet solution allège les échanges Client-Seveur, mais ça oblige quand même à avoir une boucle dans le contrôleur qui fait une requête à la base de donnée toutes les secondes. Laquelle boucle s’arrêtant automatiquement au bout de 5 minutes, évitant ainsi la boucle infini de la mort.
EDIT: Non attendez je raconte n'importe quoi -_- en 5 minutes le client va conclure a un timeout du serveur, erreur 408 tout ça. C’était une idée de merde.
Mais ça me parais toujours comme quelque chose de moche et lourd. Je sent qu'un truc m’échappe dans ce problème. Avez vous des idée à me proposer ?
Cordialement