LAMP-Stack

menu icon

LAMP-Stack

Erfahren Sie, warum einige der beliebtesten Open-Source-Webanwendungen heute auf LAMP ausgeführt werden, einem bewährten Stack aus Linux, Apache, MySQL und PHP.

Was ist ein LAMP-Stack?

  • Erfahren Sie mehr über den bewährten Stack, der in der Open-Source-Community verwendet wird
  • Programmieren Sie mit einer dynamischen Sprache, in die Sie schnell einsteigen und Ergebnisse sehen können
  • Bauen Sie auf anpassbare Module, um Web-Apps nach Ihren Vorstellungen zu erstellen und einzusetzen
  • Erweitern Sie Ihre Qualifikation durch wertvolle neue Kenntnisse und Fähigkeiten

Sie haben vielleicht schon etwas über den LAMP-Stack gehört. Das wäre nicht überraschend, da einige der heute beliebtesten Open-Source-Webanwendungen - wie zum Beispiel WordPress und Drupal - auf dem LAMP-Stack ausgeführt würden.

Aber LAMP hat noch viel mehr zu bieten. LAMP war einer der ersten Open-Source-Software-Stacks für das Web und ist nach wie vor eines der gängigsten Verfahren, Webanwendungen bereitzustellen. Der Stack ist so weit verbreitet, dass Sie ihm im Laufe Ihrer beruflichen Laufbahn gewiss häufig begegnen werden, wenn Sie bestehende Anwendungen aktualisieren oder hosten. Und LAMP wird von vielen als die Plattform der Wahl für die Entwicklung neuer kundenspezifischer Web-Apps angesehen.

Stabil, einfach, leistungsstark - dies sind Attribute, mit denen die AMP häufig beschrieben wird. All dies spricht dafür, sich mit LAMP zu befassen, und ist eine wertvolle Ergänzung für Ihre Qualifikation als Entwickler.

Komponenten

LAMP steht für Linux, Apache, MySQL und PHP. Zusammen bieten die Lösungen ein bewährtes Softwarepaket für die Bereitstellung von hochperformanten Webanwendungen. Jede Komponente trägt wesentliche Funktionen zum Stack bei:

  • Linux: Das Betriebssystem. Linux ist ein kostenfrei erhältliches Open-Source-Betriebssystem, das es seit Mitte der 1990er Jahre gibt.Heute hat es eine umfangreiche, weltweite Nutzerbasis, die sich über alle Branchen erstreckt. Linux ist unter anderem deshalb so beliebt, weil es mehr Flexibilität und Konfigurationsmöglichkeiten bietet als einige andere Betriebssysteme.
  • Apache: Der Web-Server. Der Apache-Web-Server verarbeitet Anfragen und stellt Web-Assets über HTTP bereit, sodass die Anwendung über eine einfache Web-URL allgemein zugänglich ist. Apache wird von einer offenen Community entwickelt und gewartet und ist ein ausgereifter, mit vielen Funktionen ausgestatteter Server, auf dem ein großer Teil der derzeit im Internet befindlichen Websites läuft.
  • MySQL: Die Datenbank. MySQL ist ein quelloffenes Managementsystem für relationale Datenbanken zum Speichern von Anwendungsdaten. Mit MySQL können Sie alle Ihre Informationen in einem Format speichern, das mit der Sprache SQL komfortabel abgefragt werden kann. SQL ist eine gute Wahl, wenn Sie es mit einer gut strukturierten Geschäftsdomäne zu tun haben und diese Struktur in das Back-End übersetzen wollen. MySQL eignet sich für die Ausführung großer und komplexer Sites. Weitere Informationen zu SQL-und NoSQL-Datenbanken finden Sie unter "SQL vs. NoSQL Databases: Wo liegt der Unterschied?".
  • PHP: Die Programmiersprache. Die Open-Source-Scriptsprache PHP arbeitet mit Apache zusammen und hilft Ihnen, dynamische Webseiten zu erstellen. Sie können HTML nicht verwenden, um dynamische Prozesse wie das Abrufen von Daten aus einer Datenbank durchzuführen. Um diese Art von Funktionalität bereitzustellen, fügen Sie einfach PHP-Code in die Teile einer Seite ein, die dynamisch sein sollen.

PHP ist für Effizienz ausgelegt. Es macht das Programmieren einfacher, indem es Ihnen erlaubt, neuen Code zu schreiben, auf 'Aktualisieren' zu klicken und sofort die resultierenden Änderungen zu sehen, ohne dass Sie kompilieren müssen. Wenn Sie es möchten, können Sie statt PHP auch Perl oder die immer beliebter werdende Sprache Python verwenden.

 

Darstellung der LAMP-Architektur

LAMP-Architektur

LAMP hat eine klassische Architektur mit mehreren Ebenen - wobei Linux die unterste Ebene bildet. Auf der nächsten Ebene befinden sich Apache und MySQL, gefolgt von PHP. Obwohl PHP nominell auf der obersten oder Präsentationsebene liegt, befindet sich die PHP-Komponente innerhalb von Apache.

So arbeiten die Elemente zusammen

Ein allgemeiner Blick auf die Ausführungsreihenfolge des LAMP-Stacks zeigt, wie die Elemente zusammenwirken. Der Prozess beginnt, wenn der Apache-Web-Server Anfragen für Webseiten vom Browser eines Benutzers erhält. Handelt es sich bei der Anfrage um eine PHP-Datei, übergibt Apache die Anfrage an PHP, das die Datei lädt und den in der Datei enthaltenen Code ausführt. PHP kommuniziert außerdem mit MySQL, um Daten abzurufen, auf die im Code verwiesen wird.

PHP verwendet dann den Code in der Datei und die Daten aus der Datenbank, um den HTML-Code zu erstellen, den die Browser benötigen, um Webseiten anzuzeigen. Der LAMP-Stack kann nicht nur mit statischen Webseiten arbeiten, sondern auch mit dynamischen Seiten, bei denen sich der Inhalt bei jedem Laden in Abhängigkeit von Datum, Uhrzeit, Benutzeridentität und anderen Faktoren ändern kann.

Nach dem Ausführen des Dateicodes übergibt PHP die resultierenden Daten wieder an den Apache-Web-Server, der sie an den Browser sendet. Diese neuen Daten können auch in MySQL gespeichert werden. Und natürlich werden alle diese Operationen durch das Linux-Betriebssystem ermöglicht, das die Basis des Stacks bildet.

Flexibilität

Auch wenn LAMP Linux als Betriebssystem nutzt, können Sie die anderen Komponenten auch mit einem anderen Betriebssystem verwenden, das Ihren speziellen Anforderungen entspricht. Zum Beispiel gibt es einen WAMP-Stack, der Microsoft Windows verwendet, MAMP mit dem Mac OS und sogar WIMP, das Windows und den Internet Information Services Webserver von Microsoft nutzt.

Da LAMP komplett quelloffen und nicht proprietär ist, sind Sie also nicht von einem bestimmten Anbieter abhängig. Sie haben die Flexibilität, immer die geeignetsten Komponenten für bestimmte Projekte oder Geschäftsanforderungen auszuwählen.

LAMP bietet auch in anderer Hinsicht Flexibilität. Apache ist modular aufgebaut und Sie werden feststellen, dass es anpassbare Module für viele verschiedene Erweiterungen gibt. Diese Module reichen von der Unterstützung für andere Sprachen bis hin zu Authentifizierungsfunktionen.

Weitere Vorteile von LAMP sind seine sichere Architektur und etablierte Verschlüsselungsverfahren, die sich im Unternehmen bewährt haben.

Effizienz

LAMP kann Ihnen helfen, die Entwicklungszeiten zu verkürzen. Da LAMP ein Open-Source-Stack ist, der bereits seit mehr als einem Jahrzehnt verfügbar ist, gibt es heute ein umfangreiches LAMP-Ökosystem. Sie können auf dem aufbauen, was andere bereits in der Vergangenheit erarbeitet haben, und es sich zu eigen machen. Arbeiten Sie mit einem Apache-Modul, das Sie zu 80 % ans Ziel bringt, passen Sie die letzten 20 % an und sparen Sie dadurch viel Zeit.

LAMP-Stack und IBM

Eine Technologie kann so komplex werden, dass die grundlegende Funktionsweise der Software nicht mehr erkennbar ist. Ein LAMP-Stack geht zurück zu den Grundlagen und bringt Sie näher an die technische Bereitstellung von Webseiten und wie diese erfolgt. Man könnte auch sagen, es ein puristisches Verfahren zur Erstellung von Anwendungen. Sie haben Ihre Datenbank, Ihre Scriptsprache und ein Verfahren, um diese den Clients zur Verfügung zu stellen - das ist LAMP.

Registrieren Sie sich an und erstellen Sie Ihr IBM Cloud-Konto.