Qu'est-ce que le JAMstack?

Découvrez ce que signifie JAMstack et les avantages de cet ensemble de technologies

Vous êtes sûrement tombé sur le termeJAMstackau cours des deux dernières années.

Il définit un groupe de technologies utilisées ensemble pour atteindre un objectif, commeLAMPEetMOYENNEsi vous connaissez le fait.

Que signifie JAMstack?

JAM signifieJavaScript,UNEPI,MArkup.

Il décrit une tendance dans la création d'applications Web et de sites Web qui présentent ces caractéristiques clés:

  • Il existe un serveur Web «stupide» (ouCDN) envoi du code HTML nécessaire à l'exécution de l'application, généralement généré à l'aide d'un générateur de site statique. Le HTML n'est pas généré
  • L'application peut charger du JavaScript qui reçoit des données d'une API. Les interactions de page telles que la navigation peuvent entraîner l'obtention de plus de données à partir d'une API. L'authentification se fait également via une API.

Cette nouvelle approche est une nouvelle manière aimable, par rapport à

  • sites Web traditionnels où le contenu est déjà fourni dans l'application (comme pour les sites statiques)
  • Sites Web basés sur le CMS qui chargent les informations d'une base de données dans le backend
  • applications rendues par le serveur utilisant tout type de langage backend

C'est également différent des sites Web rendus côté client (par exemple construits avec React) avec une partie rendue côté serveur. Le JAMstack n'implique pas du tout le rendu du serveur.

Quels sont les avantages de l'utilisation du JAMstack?

  • C'est rapide. Le HTML est déjà généré et le serveur Web doit simplement le servir, sans impliquer aucune opération de backend comme la recherche de données à partir d'une base de données ou la génération des pages HTML pour chaque requête. Il peut être facilement servi via un CDN (Content Delivery Network).
  • C'est EFFICACE. Puisqu'il n'y a pas de backend, il n'y a pas de goulots d'étranglement (par exemple pas de base de données).
  • C'est moins cher, car servir les ressources via un CDN est bien moins coûteux que de les servir via un serveur backend
  • C'est plus SÉCURISÉ, car le backend n'est exposé que via une API

L'approche traditionnelle de l'application de sites Web de rendu sur serveur de manière dynamique, comme cela se produit avec WordPress, Laravel et Rails, est remplacée dans de nombreux cas par une approche plus légère.

Un site WordPress typique peut envoyer 30 à 100 requêtes à une base de données pour chaque chargement de page, en fonction de la quantité de plugins installés. À moins d'être fortement mis en cache, vous pouvez reconnaître un site WordPress quand il devient populaire sur Hacker News, Reddit ou tout autre grand site parce que vous obtenez une page vierge - ce qui signifie que quelque chose s'est écrasé sur le serveur, car le site ne peut pas prendre en charge tout ce trafic. Souvent, c'est une occasion perdue, car lorsque le site est à son apogée en popularité, il ne fonctionne pas.

Servir une page HTML statique au lieu de beaucoup, beaucoup plus efficace que cela, et les données dynamiques peuvent toujours être récupérées en cas de besoin, en utilisant des appels d'API séparés une fois le HTML chargé.

Quelles technologies peuvent être utilisées pour créer des applications JAMstack?

et plus.

À quoi sert JAMstack?

De nombreuses applications peuvent tomber sous l'égide de JAMstack, et les possibilités sont infinies, allant des simples blogs aux sites de commerce électronique (par exemple avecSnipcart) à des applications Web plus complexes.

Mon blog tombe sous l'égide de JAMstack. Tout le HTML est généré au moment du déploiement, et il ne se passe rien d'autre.