Défois, je me demande où je suis. Le problème n'est pas que TCP est trop lent. C'est que HTTP n'a ni été fait pour télécharger plein de fichier à la fois (multiplexage), faire des connections persistantes (pousser des informations du serveur vers le client, donc on fait du « polling »).
Le problème n'est pas le temps de connections des connections TCP, le problème c'est qu'on veux tout faire avec HTTP qui n'a pas été fait pour ça.
Typiquement dans notre cas soyons franc, c'est pour le système de messagerie instantannée en web de google. Puisque vu que HTTP ne fait pas de connections persistantes, on ne peux pas pousser un nouveau message vers le serveur. Donc, ce qu'on fait (en gros, je simplifie), on demande en http toutes les secondes « est-ce qu'il y a un nouveau message ? », « est-ce qu'il y a un nouveau message ? ». Et oui ça sert à rien d'ouvrir des connections TCP pour ça (les requêtes/réponses font à peine un paquet). Mais la solution existe depuis longtemps, ça s'appelle XMPP.
Le problème aujourd'hui, c'est pas que HTTP est pourri, c'est qu'on veux tout faire avec HTTP. J'ai l'impression que les gens cherchent des faux problèmes, alors qu'il y a des vraies solutions.
Knowing the syntax of Java does not make someone a software engineer.
# Où suis-je ?
Posté par Niniryoku . En réponse au journal Réduire la latence des connections TCP, enfin. Évalué à 3.
Défois, je me demande où je suis. Le problème n'est pas que TCP est trop lent. C'est que HTTP n'a ni été fait pour télécharger plein de fichier à la fois (multiplexage), faire des connections persistantes (pousser des informations du serveur vers le client, donc on fait du « polling »).
Le problème n'est pas le temps de connections des connections TCP, le problème c'est qu'on veux tout faire avec HTTP qui n'a pas été fait pour ça.
Typiquement dans notre cas soyons franc, c'est pour le système de messagerie instantannée en web de google. Puisque vu que HTTP ne fait pas de connections persistantes, on ne peux pas pousser un nouveau message vers le serveur. Donc, ce qu'on fait (en gros, je simplifie), on demande en http toutes les secondes « est-ce qu'il y a un nouveau message ? », « est-ce qu'il y a un nouveau message ? ». Et oui ça sert à rien d'ouvrir des connections TCP pour ça (les requêtes/réponses font à peine un paquet). Mais la solution existe depuis longtemps, ça s'appelle XMPP.
Le problème aujourd'hui, c'est pas que HTTP est pourri, c'est qu'on veux tout faire avec HTTP. J'ai l'impression que les gens cherchent des faux problèmes, alors qu'il y a des vraies solutions.
Knowing the syntax of Java does not make someone a software engineer.