Welcome to the JAMStack !
SSG, JAMStack ?
Et oui dans notre métier les acronymes et autres termes obscurs sont légion.
Pour mieux comprendre, voici comment fonctionne un site dynamique "classique" :
Avec cette architecture, à chaque fois que vous chargez une page Internet depuis votre navigateur, le serveur WEB interroge un serveur d'application qui, pour produire la page demandée, charge un ensemble d'informations depuis une base de données. Ce serveur génère en retour le code HTML de votre page et renvoi le résultat au serveur WEB qui enfin la transmet à votre navigateur.
Alors bien sur il existe tout un tas d'astuces pour accélérer ce processus (caches) mais cela complexifie encore l'architecture, sa maintenance et niveau sécurité, vous devez encore mettre en oeuvre un bon nombre d'éléments pour proteger convenablement votre site.
En comparaison, voici comment un site dit "JAMStack" fonctionne :
Le
Pas de base de données ?
Alors oui ... et non, c'est la qu'interviennent les fameux
GIT est un outil très connu des développeurs. Il permet de maintenir le code source d'un projet et son historique.
Et voilà comment une mise à jour de votre site fonctionne :
- Vous modifiez ou ajoutez du contenu dans votre base ou dans un nouveau fichier représentant par exemple un post de blog
- Vous enregistrer le changement dans GIT (commit)
- Votre service d'hebergement lance automatiquement la regénération de votre site et met à jour les CDN
Et voilà votre nouveau contenu est disponible en ligne.
Mais pourquoi c'est bien ?
On l'a vu, la JAMStack simplifie énormément l'infrastructure, tout du moins elle est entierement géré par votre hebergeur. Mais ce n'est pas le seul avantage.
Performance et Référencement (SEO)
Les moteurs de recherches et notamment Google favorisent les sites les plus rapide. En éliminant la génération des pages à chaque appel, les sites statique se chargent en quelques millisecondes et comme il est coutume de les heberger sur un CDN celà reste vrai partout autour du globe.Sécurité
Votre site est statique, le contenu déployé est figé, celà signifie qu'il n'est pas possible pour un pirate d'attaquer votre base de données ou les services de votre site car il n'y en a pas.Réduction des coûts
Avec un site statique, vous n'avez pas besoins de serveurs puissant pour diffuser votre contenu et comme vous vous appuyez sur des services tiers vous pouvez scaler à moindre coût.Pour aller plus loin
Un site statique c'est bien mais que faire si vous avez besoin de plus d'interactivité. Vous voulez par exemple afficher une information en temps réel ou vous avez besoin d'un système de login, d'un formulaire de contact ou même de payement ?
Dans ce cas, retour à la case départ mais pas entièrement.
Pour certaines fonctionnalités, vous pouvez faire appel à des services tiers.
Des services et des api en ligne il en existent beaucoup aujourd'hui. Et si un service n'existe pas, vous pouvez vous orientez vers un service ServerLess et coder votre propre fonction en quelques minutes.
Enfin si vous ne souhaitez pas dépendre d'un service tiers pour une fonctionnalité ou si votre besoin reste complexe, vous pouvez toujours mettre en oeuvre un service dédié à cette tache sur un serveur dans un Cloud ou sur un VPS.