Accueil
Thèmes
lamp stack
Vous avez peut-être entendu parler de la pile LAMP. Cela ne serait pas surprenant, puisque certaines des applications Web open source les plus utilisées actuellement, comme par exemple WordPress et Drupal, s'exécutent sur LAMP.
Mais LAMP a beaucoup plus à son crédit. LAMP a été l'une des premières piles logicielles open source pour le Web, et elle reste l'un des moyens les plus courants de fournir des applications Web. Elle est si largement utilisée que vous la rencontrerez probablement fréquemment au cours de votre carrière, lorsque vous mettrez à jour ou hébergerez des applications existantes. Et elle est considérée par beaucoup comme la plateforme de choix pour le développement de nouvelles applications Web personnalisées.
Stable, simple, puissante : ce sont les mots qui reviennent le plus pour décrire LAMP. Tout cela en fait une solution qui vaut la peine d'être étudiée, et un plus sur le CV de tout développeur.
LAMP est l'acronyme de Linux, Apache, MySQL et PHP. Ensemble, ils constituent un ensemble de logiciels éprouvés pour la création d'applications Web performantes. Chaque composant apporte des fonctionnalités essentielles à la pile :
PHP est conçu pour l'efficacité. Il simplifie la programmation (et est un peu plus amusant) en vous permettant d'écrire le nouveau code, de simplement actualiser et de voir immédiatement les changements qui en résultent sans compiler. Si vous préférez, vous pouvez remplacer PHP par Perl ou le langage Python, qui connaît un succès croissant.
LAMP possède une architecture classique en couches, avec Linux au niveau le plus bas. La couche suivante est constituée d'Apache et MySQL, suivie de PHP. Bien que PHP se trouve en principe au sommet de la couche de présentation, le composant PHP se trouve dans Apache.
Un examen général de l'ordre d'exécution de la pile LAMP montre comment les éléments interagissent. Le processus démarre lorsque le serveur Web Apache reçoit des demandes de pages Web du navigateur d'un utilisateur. Si la demande concerne un fichier PHP, Apache transmet la demande à PHP, qui charge le fichier et exécute le code qu'il contient. PHP communique également avec MySQL pour récupérer toutes les données référencées dans le code.
PHP utilise ensuite le code dans le fichier et les données de la base de données pour créer le code HTML dont les navigateurs ont besoin pour afficher les pages Web. La pile LAMP est efficace pour gérer non seulement les pages Web statiques, mais aussi les pages dynamiques dont le contenu peut changer à chaque chargement en fonction de la date, de l'heure, de l'identité de l'utilisateur et d'autres facteurs.
Après avoir exécuté le code du fichier, PHP transmet les données résultantes au serveur Web Apache pour qu'il les envoie au navigateur. Il peut également stocker ces nouvelles données dans MySQL. Et bien sûr, toutes ces opérations sont activées par le système d'exploitation Linux qui s'exécute à la base de la pile.
Bien que LAMP utilise le système d'exploitation Linux, vous pouvez utiliser les autres composants avec un système d'exploitation différent pour répondre à vos besoins. Il existe, par exemple, une pile WAMP qui utilise Microsoft Windows, MAMP avec Mac OS, et même WIMP, qui utilise Windows et le serveur Web Internet Information Services de Microsoft.
LAMP étant entièrement open source et non propriétaire, vous pouvez éviter l'enfermement propriétaire. Vous disposez de la flexibilité nécessaire pour sélectionner les composants appropriés à des projets spécifiques ou à des besoins métier.
LAMP offre également de la flexibilité à d'autres égards. Apache est de conception modulaire, et vous constaterez qu'il existe des modules existants et personnalisables pour de nombreuses extensions différentes. Ces modules vont de la prise en charge d'autres langages aux fonctionnalités d'authentification.
Autre avantage de LAMP : son architecture sécurisée et ses pratiques de chiffrement bien établies, qui ont fait leurs preuves dans l'entreprise.
LAMP peut vous aider à accélérer le développement. LAMP étant une pile open source disponible depuis plus de dix ans, il existe aujourd'hui un important écosystème LAMP. Vous pouvez vous appuyer sur ce que d'autres ont fait par le passé et vous l'approprier. Travaillez dans un module Apache qui vous permet d'atteindre 80 % de votre objectif, personnalisez les 20 % restants, et gagnez ainsi un temps considérable.
Délivrez des applications Web haute performance sur votre serveur virtuel classique configuré avec la pile LAMP.
Une base de données relationnelle organise les données sur plusieurs tables reliées entre elles par des clés. SQL (Structured Query Language) est le langage de programmation standard pour interagir avec les bases de données relationnelles.
MEAN, pour MongoDB, Express.js, AngularJS et Node.js, est une pile JavaScript de bout en bout largement utilisée pour les applications prêtes pour le cloud.