WebSocket API & Protocole
Les limites de HTTP
L'évolution du web
Il y'a encore quinze ans le web se limitait à de simples pages HTML qui proposaient du contenu statique et quelques liens pour naviguer dans le site.
Avec l'essor des technologies, script CGI, PHP, JEE, ASP et AJAX, les application web ont fortement évoluées et ont pris une place de plus importante
sur Internet mais aussi et surtout dans le monde de l'entreprise.
En effet il est devenu commun au travail d'utiliser des applications non plus installées localement sur la machine, mais accessibles à distance via un navigateur web.
Aujourd'hui on parle d'application web riche, RIA (Rich Internet Application), et certaines d'entres elles ont des besoins de communications temps réels,
c'est à dire sans latence.
Quelques exemples:
- Messageries instantannées
- Réseaux sociaux
- Applications financières
- Jeux en ligne multijoueurs
- ...
La rusticité de HTTP
HTTP date de 1990 autrement dit le protocole n'a pas été pensé pour les applications d'aujourd'hui qui nécessite une communication temps réel.
Déjà le HTTP est un protocole Half Duplex (soit une voie montante: la requête, soit une voie descendante: la réponse).
Ensuite c'est un protocole sans état (stateless), il n'y a pas une gestion de statut de la communication.
Puis HTTP ne permet pas, ou du moins il n'est pas adapté pour faire du push.
Ce schéma décrit très simplement le fonctionnement de HTTP: