Je viens de lire que Twitter souhaitait
devenir le « bus des messages de l'internet ». Mais je pense que c'est
une grossière erreur : Twitter n'a pas été concu avec une architecture pour
devenir un service de communication à très grande échelle. C'est bien une limite du concept de cloud computing.
En jetant un oeil à la conception initiale d'Internet permet de comprendre pourquoi Twitter ne pourra pas tenir ce rôle : le réseau a été conçu pendant la guerre froide par les militaires américains pour résister à une attaque nucléaire. Cette aptitude a été déclinée sur tous les services de l'internet. Les services essentiels du net sont construit sur des systèmes répartis et redondants.
Quelques explications techniques à différents niveaux :
- La communication entre ordinateurs est basé sur le protocole TCP/IP (avec des adresses numériques) et un système de « routes ». Ces routes définissent le chemin à utiliser pour qu'un message envoyé (un paquet) arrive à sa destination. Et il y a un système automatique pour définir la meilleure route d'un ordinateur à l'autre à un instant donné. Ce même système s'autocorrige en cas de problème et de routes non accessibles.
- Pour rendre Internet utilisable par tout le monde, un annuaire a été mis en place, ce sont les DNS. Ce système est basé sur une arborescence de serveurs et permet d'obtenir instantanément une adresse IP à partir d'un nom (de domaine). Le haut de l'arborescencse est géré par 13 « root servers ».
- La « killer app » d'internet reste l'email, c'est indéniable. Dès le début l'email a été basé sur les DNS est profite de sa fiabilité. Par le biais d'enregistrement de type « Mail Exchanger » dans les DNS, la réception des emails est sécurisées : en cas de panne du serveur qui héberge la boite aux lettres un autre serveur stocke temporairement les messages.
Cette architecture a été conçue il y a près de 30 ans, et pourtant elle tient toujours debout ! Napster n'a rien inventé, Internet est basé uniquement sur des protocoles P2P.
Combien de fois Twitter est tombé ? Impossible de le compter. Pourquoi ? Twitter est basé sur une architecture centralisée, et ne peux pas répondre au besoin de ressources potentiellement illimité ! C'est le vrai point faible des services basés sur le Cloud Computing.
Le Cloud Computing, évolution de l'ASP et du SaaS, est très intéressant pour des problématiques applicatives : un logiciel de gestion, un service de communication, mais pas du tout adapté pour un élément de l'architecture de communication largement utilisé.

