tu dois tout de même renvoyer une requête au serveur à chaque fois que tu reçois quelques chose
Ah non, pas du tout ! Le principe du multipart, c'est justement de permettre au serveur d'envoyer plusieurs fragments de réponse au client pour la même requête, de façon asynchrone (c'est aussi utilisé, par exemple, pour rafraîchir l'image tirée d'une webcam en accédant juste au fichier JPEG).
Le comportement que tu décris est celui du Ajax with long polling.
Ça rajoute pas mal de complexité aussi bien au niveau serveur que client
Certes, mais les serveurs d'applications web récents fournissent des API dédiées, et un client XMPP en JavaScript, ça ne doit pas être trivial non plus ;-)
Rajouter deux couches (HTTP + Comet) pour revenir aux même fonctionnalités qu'une couche inférieur (forcément plus rapide)
Concrètement, il y a quand même une subtilité :
- ça passe les NAT sans aucun effort,
- ça utilise le proxy HTTP quand le firewall ne laisse rien passer,
- c'est bien pris en charge par les navigateurs web.
Dans un monde idéal, ça n'aurait pas d'importance, mais le monde est ce qu'il est : difficile de se passer de HTTP.
[^] # Re: le rapport avec XMPP ?
Posté par ☂ Tramo . En réponse au journal Jour, nuit, jour, nuit, jour.... Évalué à 1.
Ah non, pas du tout ! Le principe du multipart, c'est justement de permettre au serveur d'envoyer plusieurs fragments de réponse au client pour la même requête, de façon asynchrone (c'est aussi utilisé, par exemple, pour rafraîchir l'image tirée d'une webcam en accédant juste au fichier JPEG).
Le comportement que tu décris est celui du Ajax with long polling.
Ça rajoute pas mal de complexité aussi bien au niveau serveur que client
Certes, mais les serveurs d'applications web récents fournissent des API dédiées, et un client XMPP en JavaScript, ça ne doit pas être trivial non plus ;-)
Rajouter deux couches (HTTP + Comet) pour revenir aux même fonctionnalités qu'une couche inférieur (forcément plus rapide)
Concrètement, il y a quand même une subtilité :
- ça passe les NAT sans aucun effort,
- ça utilise le proxy HTTP quand le firewall ne laisse rien passer,
- c'est bien pris en charge par les navigateurs web.
Dans un monde idéal, ça n'aurait pas d'importance, mais le monde est ce qu'il est : difficile de se passer de HTTP.