Le retour glorieux du petit HTML
HTML joue sur tous les écrans du monde, mais reste pourtant le personnage le plus effacé de la franchise Internet. Jusqu’à aujourd’hui.
L’histoire de HTML est un peu triste. Il était là aux balbutiements de l’univers WWW et pendant plusieurs années en a été le super héros. Mais des personnages plus colorés et excitants ont vu le jour avec le Web 2 et lui ont volé la vedette. Petit à petit, les familles des blogues et des wikis se sont lancées à l’assaut et ont envahi toute la toile: Wordpress, Wikipédia, MySpace, Facebook, Wyx pour ne nommer que ces têtes d’affiche.
Ces derniers sont tous des systèmes de gestion de contenu (CMS) qui utilisent les ressources énormes des serveurs pour générer des pages Web sur mesure. Ils s’appuient sur des bases de données auxquelles ils adressent de nombreuses requêtes pour composer une page Web. Les serveurs travaillent très fort et sont surexploités. La page d’accueil de Amazon fait environ 250 requêtes aux serveurs à chaque visite. Celle de votre page Facebook, environ 350. On a dû monter une gigantesque armée de serveurs pour répondre à la demande. On a dû mettre en place un système de relais, ou caches, pour réduire le nombre de requêtes.
L’ironie dans tout ça, c’est qu’on a toujours besoin de notre petit HTML pour livrer la page du serveur à votre navigateur.
Pourquoi ne pas, se sont dit certaines lumières, mettre le système de gestion de contenu sur un appareil local et téléverser juste les fichiers HTML sur le serveur? Beaucoup moins de travail pour le serveur: pas de base de données, pas d’incessantes requêtes… C’est vrai que notre petit fichier HTML a besoin d’un peu de renfort de sa feuille de style, des images et des commandes JavaScript qui seront exécutées sur l’appareil local. Mais une vingtaine de requêtes pourraient lui suffire, et même moins.
C’est vrai aussi que beaucoup de sites, comme des sites de commerce électronique, ne peuvent pas utiliser cette approche. Par contre, il y a des sites d’agrégation de contenu avec des milliers de pages qui le font.
Les logiciels qui opèrent la magie sont des générateurs de site statique, comme Jekyll, Next, ou mon préféré, Hugo. Les pages sont créées localement avec leurs composantes distinctes, comme les en-têtes, les menus, les pieds de page. Au moment de publier, un site complet est généré en quelques secondes (3,9 secondes pour ce site-ci). Le site HTML est ensuite téléversé sur le serveur. C’est tout.
Pas de corruption de base de données, pas de Internal Server Error, pas de 404 Page not found, pas de mise à jour de sécurité du cœur et des extensions, pas d’infiltration malicieuse par du code PHP, pas de pages de configuration complexe à déchiffrer, pas de sauvegarde mensuelle, pas de lenteur indue, pas de cache à effacer.
Il n’y a que notre petit HTML, vif et riant, qui brille à l’écran.
Jean-Pierre,