Was ist NGINX?
Beliebte Webserver-Software für die blitzschnelle Bereitstellung von Inhalten
In der Hosting-Welt stehen verschiedene Technologien zur Verfügung, um die beste Performance für Ihre Website, Webanwendung oder Ihren Webshop zu erreichen. Heute nehmen wir NGINX unter die Lupe, eines der beliebtesten Softwarepakete für die Bereitstellung von Web-Traffic.
Was ist NGINX?
NGINX ist eine Open-Source-Software für die Bereitstellung von Inhalten über das Web, (Reverse-)Proxying, Caching, Load Balancing, Media Streaming und mehr.
Ursprünglich begann NGINX als Webserver, der sich auf Stabilität und sehr schnelle Leistung in Webumgebungen konzentrierte, die viele statische Inhalte bereitstellen. Später wurde NGINX weiterentwickelt, um als Proxy- und Reverse-Proxy-Server zu dienen. Das bedeutet, dass er auch ein Server für E-Mail (weil er die Protokolle IMAP, POP3 und SMTP unterstützt) und ein Load Balancer (weil er HTTP-, TCP- und UDP-Datenverkehr bedienen kann) sein kann. Lesen Sie: Es ist eine der vielseitigsten Serversoftware, die es derzeit auf dem Markt gibt.
Die NGINX-Software wurde 1999 von Igo Sysoev zur Lösung des C10-Problems entwickelt. Dieses Problem wurde um 1999 identifiziert und bestand aus einer Reihe von Problemen bei der Handhabung großer Datenmengen (über 10.000 Anfragen) auf Webservern.
Die NGINX-Software läuft sowohl auf Linux als auch auf Windows, den beiden in der Serverwelt am häufigsten verwendeten Betriebssystemen.
Es wird geschätzt, dass etwa 30 % aller Websites NGINX als Basis für ihre Serversoftware verwenden.
Was kann NGINX leisten?
Web-Server
Ursprünglich war NGINX in erster Linie eine Webserver-Software. Das bedeutet, dass die Inhalte auf einem NGINX-Server mit NGINX bedient werden können. In dem Moment, in dem ein Webbesucher eine Website besucht, erledigt NGINX seine Arbeit und zeigt sie im Browser des Besuchers an.
Applikationsserver
In der Hosting-Welt nennen wir eine Menge Dinge eine Applikation. Eine Anwendung ist eine Website, kann aber auch eine Geschäftsanwendung sein.
Im Grunde genommen erfolgt das Ausliefern der Inhalte dieser Anwendungen auf genau dieselbe Weise. Die Serversoftware muss sicherstellen, dass der Inhalt und die Funktionalität effizient und für den Benutzer (den Web-Besucher oder den Mitarbeiter) zugänglich geliefert werden.
Der Hauptunterschied zwischen einem Webserver und einem Anwendungsserver besteht darin, dass ein Webserver hauptsächlich statische Inhaltsanforderungen eines Benutzers verarbeiten und senden muss. Ein Applikationsserver konzentriert sich mehr auf die Bereitstellung des Zugriffs auf die Geschäftslogik. Dazu gehört in der Regel auch das Ausliefern von dynamischen Inhalten, also von Code, der sich auf Basis der gesendeten Anfrage verändert.
Für NGINX spielt es also eigentlich keine Rolle, welche Art von Anwendung Sie verwenden
E-Mail-Server
NGINX unterstützt Protokolle wie IMAP, POP3 und SMTP, so dass es auch als E-Mail-Server eingesetzt werden kann.
Lastausgleicher
NGINX kann auch als Load Balancer fungieren. Ein Load Balancer kann als eine Art Verkehrsregler gesehen werden, der den Besucherverkehr kontrollieren muss, damit die Website nicht mit Anfragen überflutet wird.
Caching
NGINX als Software eignet sich sehr gut für das Caching, eine spezielle Art, statische Inhalte schneller an die Webbesucher auszuliefern. Dadurch werden die Inhalte schneller serviert und es wird keine zusätzliche Software wie Redis oder Varnish benötigt.
NGINX-Steuerung
Neben dem Hosting traditioneller monolithischer Anwendungen eignet sich NGINX auch hervorragend für Entwicklungsteams, die Software auf verteilte Art und Weise bereitstellen möchten, zum Beispiel mithilfe von CI/CD-Pipelines. Mit dem dedizierten NGINX-Controller wird es möglich, eine Cloud-native Art der Anwendungsentwicklung und -bereitstellung zu unterstützen.
NGINX vs. Apache
Auch im Bereich der Serversoftware hat NGINX einen notorischen Konkurrenten, nämlich Apache. Apache wird häufig in einer sogenannten LAMP-Hosting-Architektur eingesetzt. LAMP steht für Linux (das gewählte Betriebssystem des Servers), Apache (die Server-Software), MySQL (die Datenbank-Software) und PHP (eine Programmiersprache). Der LAMP-Stack wird u. a. für WordPress-Websites verwendet, da diese nach wie vor PHP und SQL-basierte relationale Datenbankmanagementsysteme (wie z. B. MySQL) nutzen. Aber der LAMP-Stack funktioniert auch gut für benutzerdefinierte Laravel-Webanwendungen, zum Beispiel. Es ist also nicht so, dass LAMP nur für WordPress verwendet wird.
Wann verwenden Sie also NGINX? Das hängt sehr von der Art Ihrer Anwendung ab, aber zum Beispiel auch davon, was Ihre Entwickler bevorzugen, um damit zu arbeiten. Der größte Vorteil von NGINX ist, dass es oft besser in der Lage ist, eine höhere Anzahl von Anfragen und damit eine höhere Anzahl von gleichzeitigen Benutzern zu bedienen. Dies macht ihn oft zum geeigneteren Kandidaten für lastverteilte Umgebungen.
THOKA sagt Ihnen gerne, welche Serversoftware für Ihre Website, Webanwendung oder Ihren Webshop am besten geeignet ist.
Fazit:
Was NGINX ist. Diese Serversoftware eignet sich sehr gut für Websites und Geschäftsanwendungen, die mit vielen Anfragen oder großen Mengen an Webverkehr zu tun haben.
Sie haben auch gelesen, dass NGINX eine vielseitige Software für eine Hosting-Umgebung ist, da es neben dem Webserver auch als Applikationsserver, Proxyserver (zum Beispiel für E-Mail), Load Balancer und Caching eingesetzt werden kann. Das und die hervorragende Performance machen NGINX zu einer sehr geeigneten Wahl für viele Websites. NGINX kann ein hohes Volumen an Verbindungen verarbeiten und ist damit ein vielseitiger Partner in Ihrem Technologie-Stack.