L’essentiel d’un environnement backend consiste à fournir des données aux utilisateurs de manière fiable. Pour cela, trois éléments clés sont indispensables : le serveur web, le WAS et la base de données. Ces trois composants ont évolué pour résoudre les problèmes apparus au fil du développement du web. Les technologies avancées comme le monitoring, le load balancing, le caching, les pipelines CI/CD ou Kubernetes reviennent à construire une maison prête à s’effondrer à tout moment si la compréhension de ces trois éléments n’est pas acquise au préalable.
Premièrement, le rôle du serveur web
Le rôle principal du serveur web était celui d’un serveur de fichiers chargé de distribuer des fichiers. Parmi les serveurs web représentatifs, on trouve Nginx, Apache, IIS et Caddy. Ces serveurs web excellent dans leur fonction de base, qui est de fournir des fichiers statiques, et sont hautement optimisés.
Deuxièmement, l’apparition et le rôle du WAS (Web Application Server)
Le WAS fonctionne en recevant certaines requêtes, en exécutant un programme prédéfini, puis en renvoyant à l’utilisateur le résultat produit par ce programme. On peut considérer cette approche comme la véritable naissance du backend : le moment où le serveur a cessé de se contenter d’afficher des fichiers pour commencer à réfléchir, calculer et traiter de la logique. Le serveur web renvoie toujours la même page statique, tandis que le WAS renvoie des pages dynamiques.
Troisièmement, la nécessité et le rôle de la base de données
La base de données a pour rôle de stocker les données de manière persistante, de les gérer de façon sécurisée et de contrôler les accès concurrents.
Parmi les autres notions très utiles à connaître pour concevoir le backend, on peut citer la conception d’API RESTful (conception d’URL centrée sur les ressources, signification de HTTP (GET, POST, PUT, DELETE, etc.), utilisation des codes d’état et principes de conception d’API fondés sur le style architectural REST), ainsi que l’authentification (compréhension de base des méthodes d’authentification et d’autorisation, comme l’authentification basée sur les sessions, et définition de politiques de gestion des utilisateurs) et la gestion des erreurs (concept de traitement des cas d’exception indispensables pour garantir la stabilité du système).
Aucun commentaire pour le moment.