Web-Stack

Was ist ein Web-Stack?

Unter einem Web-Stack versteht man die Sammlung von Software-Anwendungen, die für die webbasierte Entwicklung benötigt wird. Ein Web-Stack verfügt mindestens über ein Betriebssystem, eine Programmiersprache, eine Datenbanksoftware und einen Webserver. Insgesamt bietet ein Web-Stack alles, was zum Aufbau einer vollständigen Plattform erforderlich ist. Das heißt, für die Ausführung einer bestimmten Anwendung ist keine weitere Software erforderlich. Das Softwarepaket wird als Stack bezeichnet, weil die enthaltenen Programme aufeinander aufbauen.

Ziel

Die Web-Stack Anwendung dient zur Implementierung von Webseiten oder der Entwicklung von Web-Applikationen. Die einzelnen Komponenten bauen aufeinander auf, sind individuell und existieren in vielen Ausführungen. Die Kombination der Komponenten hängt davon ab, für welchen Einsatz sie genutzt werden soll.

Funktion

Das Betriebssystem fungiert als zentrale Schnittstelle zwischen den Hardware- und Softwarekomponenten. Der Webserver hilft bei der Bereitstellung der erforderlichen Dokumente, während Datenbanken die dauerhafte Speicherung der Datenmengen gewährleisten. Die Programmiersprache (oder Skript-Interpreter genannt) arbeitet auf der Client-Seite und hilft dabei, dynamische Web-Anwendungen von Webseiten zu realisieren. Die Sammlung der IT-Komponenten in Verbindung mit einer kompatiblen Server-Hardware unterstützt dabei, wesentliche Informationen der Web-Projekte an anfragende Clients zu übertragen.
Frameworks können eine Erweiterung der Web-Stack Funktion durch zusätzliche Features ermöglichen, wie z. B. weitere Programmiersprachen, Analyseprogramme oder Proxy-Server.

Das Betriebssystem

Das Betriebssystem bildet das wesentliche Interface zwischen der Server-Hardware und den weiteren Softwarekomponenten. Es stützt sich dabei auf die Hardware-Ressourcen, um die Funktionen und Aufgaben der einzelnen Applikationen zu gewährleisten. Systeme, die ein Web-Stack Aufbau ermöglichen sind: Linux-, Unix-, Windows- und Mac-OS-Distributionen.

Der Webserver

Bei dem Webserver handelt es sich um eine Software, die auf dem Betriebssystem installiert ist. Der Webserver erhält über das HTTP-Übertragungsprotokoll die Anfrage (Dokumente) des Clients übermittelt. Dokumente mit statischen Inhalten (z. B. HTML-Dateien, Bilder) kann der Webserver direkt verarbeiten. Handelt es sich jedoch um sogenannte dynamische Inhalte, benötigt der Webserver die Unterstützung von Datenbanken und Skriptmodulen. Typische Webserver-Lösungen sind z. B. Microsoft IIS, Apache oder nginx.

Die Datenbank

Die Datenbank als Web-Stack Komponente speichert für das Webprojekt relevante Datenmengen dauerhaft und effizient ab. Unter Zuhilfenahme von Server-Erweiterungen, welche von der Datenbank verarbeitet und anschließend an die Server-Erweiterungen zurückgegeben werden, kann der Webserver zu jedem Zeitpunkt auf die Daten zugreifen. Es wird ein Ausgabeformat wie z. B. HTML aus dem Ergebnis der Anfrage erzeugt und an den Webserver weitergeleitet.
Die Datenbank ist eng mit der Webserver-Software und der genutzten Skript- und Programmiersprachen verknüpft.
Oft genutzte Datenbanken sind z. B. MySQL, Oracle oder MongoDB.

Der Skript-Interpreter

Die Webserver-Software kann nur mithilfe von Skriptsprachen dynamische Webseiten und Web-Applikationen realisieren. Der Skript-Interpreter ist im anfragenden Browser im Einsatz (d. h. clientseitig). Es können auf der anderen Seite auch Kalkulationsprozesse durch serverseitiges Skripting durchgeführt werden (z. B. zur Darstellung der Seiten). Der klassische Skript-Interpreter für Web-Stack ist PHP, selten auch Java, Ruby, ASP.NET, Python oder Perl.

Web-Stack Lösungen

LAMP

LAMP ist das meist verwendete Modell einer Web-Stack Lösung. Das Akronym ist nach den Namen der ursprünglichen vier Open-Source-Komponenten benannt: L wie Linux-Betriebssystem, A wie Apache HTTP Server, M wie MySQL und P wie PHP Programmiersprache. Die LAMP-Komponenten sind weitgehend austauschbar und nicht auf die ursprüngliche Auswahl beschränkt. Diese Web-Stack Lösung eignet sich besonders zum Aufbau dynamischer Webseiten und Web-Applikationen.

Seit der Erstellung wurde LAMP-Modell an andere Komponenten angepasst, obwohl es in der Regel aus einer freien bzw. einer Open-Source-Software besteht. Eine äquivalente Installation in der Microsoft Windows-Betriebssystemfamilie wird beispielsweise als WAMP bezeichnet, eine entsprechende Installation auf macOS wird MAMP genannt.

WISA

Bei diesem Modell sind die Komponenten Windows, IIS (Internet Information Services), SQL und ASP.NET miteinander verbunden. Ziel dieser Lösung ist es, die Funktionen eines Software-Pakets optimal zusammenarbeiten zu lassen. Das bedeutet, dass die Software bei ihrem Einsatz proprietär ist – im Gegensatz zu LAMP. Mithilfe von WISA kann der lokale IIS-Webserver auf dem Windows Computer ausgeführt werden, während Webseiten und Web-Applikationen erstellt werden können, ohne im Internet live zu sein. Zudem ist für den Einsatz von WISA kein Skript-Interpreter erforderlich, was diesen Stack zu einer optimalen Lösung komplexer Web-Projekte macht.

MEAN

MEAN ist eine Open-Source-JavaScript-Software Lösung zur Erstellung dynamischer Webseiten und Web-Applikationen. Die Abkürzung setzt sich aus den Komponenten MonboDB, Express.js, AngularJS und Node.js., zusammen. Da alle Komponenten als Unterstützungsprogramme in JavaScript geschrieben sind, können diese Anwendungen in einer Sprache für serverseitige und clientseitige Ausführungsumgebungen eingesetzt werden.
Vorteil dieses Web-Stack ist der vereinfachte und schnelle Performance-Prozess sowie die effiziente Skalierungsmöglichkeit der jeweiligen Projekte. Zum Beispiel clientseitige Web-Applikationen oder mobile Anwendungen können mit dieser Datenübertragung im sogenannten JSON-Format ausgezeichnet realisiert werden.

METEOR

METEOR ist ein relativ neue Anwendung eines Web-Stack Frameworks. Obwohl es technisch gesehen kein Web-Stack ist, wurde es erstellt, um Full-Stack-Anwendungen möglich zu machen. METEOR ist in JavaScript geschrieben und ein Anfänger-freundliches Framework, das in wenigen Stunden einen erfahrenen Programmierer zum Laufen bringen kann.
Ist METEOR in Node.js geschrieben, dient es der Unterstützung des MEAN Web-Stack Anwendungen.
Web-Stacks auf METEOR basierend, funktionieren optimal mit MongoDB, laufen auf Servern mit Node.js und können neben JavaScript Fronted Framworks auch in React oder AngularJS existieren.

Geeigneter Web-Stack

Es hängt von unterschiedlichen Faktoren ab, welcher Web-Stack die optimale Lösung für ein Webprojekt ist. Während die traditionellen Web-Stacks bei mehrseitigen Projekten von Vorteil sind, können sich Stacks auf JavaScript basierend wunderbar für den Einsatz einseitiger Anwendungen einsetzen lassen.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte