Wir freuen uns, die Verfügbarkeit von NGINX Plus Release 8 (R8), der neuesten Version unserer Plattform für die Anwendungsbereitstellung, bekannt zu geben. Dieses Release umfasst eine vollständig produktionsreife und gehärtete Implementierung von HTTP/2, eine persistente API für die dynamische Neukonfiguration, das neue Slice-Modul für die skalierbare Zwischenspeicherung großer Videodateien sowie viele weitere Funktionen, die eine reibungslose Anwendungsbereitstellung gewährleisten.
Anmerkung der Redaktion – Mit NGINX Plus R8 wurde außerdem die OAuth-Technologievorschau eingeführt. Weitere Informationen dazu finden Sie weiter unten.
Weitere Informationen zu den wichtigsten neuen Funktionen in NGINX Plus R8 finden Sie in diesen weiterführenden Ressourcen.
- Webinare auf Abruf:
- Blogbeitrag: Intelligentes und effizientes Bytebereich-Caching mit NGINX und NGINX Plus
Die wichtigsten neuen Funktionen in NGINX Plus R8 sind:
- Vollständig produktionsreife HTTP/2-Implementierung – Mit NGINX Plus R7 haben wir Unterstützung für HTTP/2 eingeführt – weniger als sieben Monate nach der Ratifizierung des Protokolls. NGINX ist mittlerweile der führende Webserver für HTTP/2. Unsere Entwicklungsarbeit war mit dieser Version jedoch nicht abgeschlossen, und wir haben weiterhin intensiv an der Verbesserung unserer Implementierung gearbeitet. Mit NGINX Plus R8 stellen wir mit Stolz eine vollständig unterstützte, produktionsreife und gehärtete Implementierung des HTTP/2-Standards bereit. HTTP/2 verbessert die Performance von Websites um bis zu 30 %. Mit NGINX Plus R8 können Sie Ihre neuen und bestehenden Websites weiterhin um HTTP/2-Unterstützung ergänzen, ohne Änderungen an Ihrer Anwendung vornehmen zu müssen.
- Persistente API für die dynamische Neukonfiguration – Mit der API für die dynamische Neukonfiguration von NGINX Plus können Sie Upstream-Server hinzufügen oder entfernen, ohne NGINX Plus neu zu starten oder die Konfigurationsdatei manuell zu ändern und neu zu laden. Diese Funktion eignet sich hervorragend für die automatische Skalierung und Service Discovery, da Sie damit den Load-Balancing-Pool nach Bedarf anpassen können. Ab NGINX Plus R8 bleiben die über die API vorgenommenen Änderungen auch nach einem Neustart oder dem erneuten Laden der Konfiguration erhalten. Mit dieser Aktualisierung der API können Sie dauerhafte Änderungen an Ihrer Load-Balancing-Konfiguration von NGINX Plus vornehmen, Server hinzufügen und entfernen sowie deren Load-Balancing-Prioritäten ändern. Über diese einfach abzusichernde API können Änderungen beliebig oft vorgenommen werden.
- Skalierbares Caching für große Videodateien – Mit NGINX Plus R8 haben wir unseren skalierbaren Inhaltscache verbessert, sodass große Videodateien wie HTML5-Videos besser verarbeitet werden können. Anstatt die gesamte Videodatei als einzelnen Cache-Eintrag zu speichern, unterteilt NGINX Plus sie in kleinere Fragmente, die anschließend im Cache gespeichert werden. Diese Strukturierung des Caches entspricht besser der Art und Weise, wie Nutzer Videos im Internet konsumieren (Vorspulen, vorzeitiges Beenden usw.), und reduziert sowohl die Latenz für die Nutzer als auch den Netzwerkverkehr zu und von den Ursprungsservern.
NGINX Plus R8-Funktionen im Detail
Dieser Abschnitt bietet einen detaillierten Überblick über alle neuen Features und Funktionen in NGINX Plus R8.
Technologievorschau für OAuth
Anmerkung der Redaktion – In NGINX Plus R8 haben wir die OAuth-Technologievorschau eingeführt, eine Implementierung der Authentifizierung nach dem OAuth-2.0-Standard. Einzelheiten dazu waren ursprünglich an dieser Stelle zu finden. In NGINX Plus R10 haben wir die OAuth-Technologievorschau durch die native Unterstützung des JSON-Web-Token-Standards (JWT).
Produktionsreife HTTP/2-Implementierung
HTTP/2 ist die neueste Version des HTTP-Protokolls. Sie behebt viele Probleme der ursprünglichen Version des HTTP-Protokolls und sorgt so für eine insgesamt bessere Leistung und eine effizientere Ressourcennutzung.
Die Nutzung von HTTP/2 hat seit der Ratifizierung des Standards im Februar 2015 stetig zugenommen. Zum Zeitpunkt der Erstellung dieses Artikels verwenden 6 % aller Websites HTTP/2 und 69 % der Internetnutzer einen Browser, der HTTP/2 unterstützt.
Mit NGINX Plus R8 erhalten Sie die derzeit praxiserprobteste, stabilste und zuverlässigste Implementierung von HTTP/2. 71 % der HTTP/2-fähigen Websites werden von NGINX und NGINX Plus betrieben. Zudem haben wir das Feedback unserer frühen Anwender in das Produkt einfließen lassen. Unsere HTTP/2-Implementierung wird für den Produktiveinsatz vollständig unterstützt und lässt sich selbst für anspruchsvollste Workloads skalieren.
NGINX Plus fungiert als HTTP/2-Gateway
NGINX Plus fungiert als „HTTP/2-Gateway“, um den Umstieg auf das neue Protokoll zu erleichtern. Auf der Frontend-Seite kommuniziert NGINX Plus über HTTP/2 mit Client-Webbrowsern, die dieses Protokoll unterstützen. Auf der Backend-Seite kommuniziert NGINX Plus wie bisher über HTTP/1.x (oder FastCGI, SCGI, uwsgi usw.). Dazwischen übersetzt NGINX Plus zwischen HTTP/2 und HTTP/1.x (oder FastCGI usw.). Das bedeutet, dass Server und Anwendungen, für die NGINX Plus als Proxy fungiert, vom Umstieg auf HTTP/2 nicht betroffen sind und nicht einmal wissen müssen, ob ihre Clients HTTP/2 verwenden. Websites und Anwendungen, die HTTP/2-Clients bedienen, müssen jedoch TLS/SSL verwenden, da dies von allen Webbrowsern vorausgesetzt wird, die HTTP/2 unterstützen.
Die einzige Konfigurationsänderung, die Sie an NGINX Plus oder NGINX vornehmen müssen, besteht darin, den Parameter „http2“ zu den „listen“-Direktiven hinzuzufügen:
listen 443 ssl http2 default_server;Weitere Informationen zu HTTP/2 in NGINX Plus und NGINX finden Sie in unserem Whitepaper und unserem On-Demand-Webinar.
Persistente dynamische Neukonfiguration
NGINX Plus bietet eine HTTP-basierte API zum dynamischen Hinzufügen, Entfernen und Ändern von Backend-Servern, ohne dass die Konfiguration neu geladen werden muss. Diese Funktion eignet sich hervorragend für die Diensterkennung, die automatische Skalierung und andere Anwendungen, bei denen Server nach Bedarf hinzugefügt und entfernt werden müssen.
Mit NGINX Plus R8 bleiben Änderungen, die über diese API vorgenommen werden, nun auch nach Neustarts von NGINX Plus und dem erneuten Laden der Konfiguration erhalten. Fügen Sie die neue Direktive state in einem upstream-Block hinzu, um die Datei anzugeben, in der NGINX Plus Statusinformationen zu den Servern der Upstream-Gruppe speichert. Änderungen, die Sie über die API zur dynamischen Neukonfiguration vornehmen, werden in dieser Datei aufgezeichnet. NGINX Plus liest die Datei beim Start ein, sodass Ihre Änderungen auch nach Neustarts erhalten bleiben.
upstream backend {
zone backend 64k;
state /var/lib/nginx/state/backend.state;
}Die Direktive state gibt die Datei an, in der NGINX Plus Statusinformationen für die Server in der Upstream-Gruppe speichert. Wenn sie in die Konfiguration aufgenommen wird, können Server nicht statisch mit der Direktive server definiert werden.
Der Benutzer nginx benötigt Schreibberechtigungen für das Verzeichnis /var/lib/nginx/state/. Falls das Verzeichnis noch nicht vorhanden ist, können Sie es mit den folgenden Befehlen erstellen:
$ sudo mkdir -p /var/lib/nginx/state$ sudo chown nginx:nginx /var/lib/nginx/stateSkalierbares Caching für große Videodateien
Caching ist eine der schnellsten Möglichkeiten, die Bereitstellung von Webinhalten zu beschleunigen. Dabei werden die Inhalte nicht nur näher am Endnutzer vorgehalten, wodurch sich die Latenz verringert, sondern auch die Anzahl der Anfragen an den vorgelagerten Ursprungsserver reduziert. Dies senkt die Bandbreitennutzung und erhöht effektiv die Kapazität. Videos, insbesondere HTML5-Videos, eignen sich besonders gut für das Caching, da die Inhalte statisch sind und unmittelbar nach ihrer Veröffentlichung meist stark nachgefragt werden.
Bei HTML5-Videos überträgt der Browser die Inhalte per Pseudostreaming, indem er HTTP-Bytebereichsanfragen stellt. So fordert er beispielsweise zunächst die erste Minute des Videos an, dann die zweite Minute und so weiter. Diese Art des Streamings erleichtert auch die Implementierung des Vor- und Zurückspulens, da der Browser nicht benötigte Videoabschnitte einfach überspringen und den angeforderten Bytebereich stattdessen an der Stelle beginnen lassen kann, zu der der Benutzer vor- oder zurückgespult hat.
NGINX Plus R8 enthält das neue Slice-Modul, das diese Art der Browser-Server-Interaktion bei zwischengespeicherten Videodateien besser unterstützt. Das Modul unterteilt Dateien in kleinere Fragmente und speichert diese anschließend zwischen. Eine solche Strukturierung des Caches ist besser auf moderne Videostreaming-Techniken abgestimmt, wie sie beispielsweise bei HTML5-Videos zum Einsatz kommen.
Um Cache-Slicing zu aktivieren, fügen Sie die Direktive „slice“ ein:
proxy_cache_path /tmp/mycache keys_zone=mycache:10m;
location / {
proxy_cache mycache;
proxy_pass http://localhost:8000;
slice 1m;
proxy_cache_key $uri$is_args$args$slice_range;
proxy_set_header Range $slice_range;
proxy_http_version 1.1;
proxy_cache_valid 200 206 1h;
}In dieser Beispielkonfiguration teilt NGINX Plus Videodateien in 1-MB-Fragmente auf. Sie müssen außerdem die folgenden Direktiven einfügen:
proxy_cache_keymit der neuen Variable$slice_rangeim definierten Schlüssel – Legt den Cache-Schlüssel so fest, dass zwischen den Fragmenten der Originaldatei unterschieden werden kann.proxy_set_header– Überschreibt denRange-Header in der HTTP-Anfrage mit$slice_range. Wenn der vom Client angeforderte Bytebereich nicht mit den Grenzen zwischen den von NGINX Plus erstellten Fragmenten übereinstimmt, muss NGINX Plus mehrere Unteranfragen stellen, um alle Daten für die Bytebereichsanfrage des Clients abzurufen.proxy_http_version– Aktualisiert die Anfrage auf HTTP/1.1, da HTTP/1.0 keine Bytebereichsanfragen unterstützt.
Weitere Informationen zu dieser neuen Funktion finden Sie in diesem zugehörigen Blogbeitrag.
Zusätzliche Funktionen
NGINX Plus R8 bietet außerdem eine Reihe zusätzlicher Verbesserungen, die Sie bei der reibungslosen Bereitstellung von Anwendungen unterstützen, darunter:
- Flexiblere Integritätsprüfungen für komplexe Anwendungen. Standardmäßig sendet NGINX Plus Integritätsprüfungsmeldungen an den Port, der durch die
server-Direktive imupstream-Block angegeben ist. Mit NGINX Plus R8 können Sie nun in jedemlocation-Block einen alternativen Port angeben. Dies ist besonders hilfreich, wenn Sie den Zustand vieler Dienste auf demselben Host überwachen. Fügen Sie derport-Parameter zurhealth_check-Direktive hinzu:
location / { proxy_pass http://backend;
health_check port=8080;
}- Standardmäßig speichert NGINX Plus jetzt HTTP-
HEAD-Anfragen im Cache (sie werden vor dem Caching inGET-Anfragen umgewandelt). Um diese Art des Cachings zu deaktivieren, fügen Sie die Direktiveproxy_cache_convert_headoffein. EineHEAD-Anfrage entspricht einer standardmäßigenGET-Anfrage, mit dem Unterschied, dass der Antworttext nicht zurückgegeben wird.HEAD-Anfragen sind nützlich, um Links auf Gültigkeit, Erreichbarkeit und kürzlich erfolgte Änderungen zu prüfen. - Eine neue Variable,
$realip_remote_addr, erfasst bei Verwendung des Real IP-Moduls die ursprüngliche IP-Adresse des Clients. - Der neue Parameter „
nohostname“ für die Direktiven „access_log“ und „error_log“ deaktiviert die Protokollierung des Hostnamenfelds in „syslog“. Bei der Protokollierung auf einem lokalen Syslog-Server ist der Hostname nicht erforderlich.
Die folgenden Module im Paket „NGINX Plus Extras“ wurden aktualisiert:
- Das Headers-More-Modul wurde auf Version 0.28 aktualisiert
- Das Lua-Modul wurde auf Version 0.9.20 aktualisiert
- Das Phusion Passenger Open Source-Modul wurde auf Version 5.0.22 aktualisiert
- Das Redis-Modul wurde auf Version 0.21 aktualisiert
Die folgenden Pakete sind nicht mehr verfügbar:
- nginx-plus-http2 – Die HTTP/2-Unterstützung ist jetzt in den Paketen nginx-plus und nginx-plus-extras enthalten. NGINX Plus unterstützt SPDY nicht mehr.
- nginx-plus-lua – Für Lua-Unterstützung verwenden Sie bitte das Paket nginx-plus-extras.
NGINX Plus upgraden oder testen
Wenn Sie NGINX Plus verwenden, empfehlen wir Ihnen dringend, so bald wie möglich ein Upgrade auf Release 8 durchzuführen. Dadurch erhalten Sie eine Reihe von Fehlerbehebungen und Verbesserungen. Außerdem können wir Ihnen so besser helfen, falls Sie ein Support-Ticket erstellen müssen. Anweisungen zur Installation und zum Upgrade finden Sie im Kundenportal.
Wenn Sie NGINX Plus noch nicht ausprobiert haben, empfehlen wir Ihnen, es für Webbeschleunigung, Lastverteilung und Anwendungsbereitstellung oder als vollständig unterstützten Webserver mit erweiterten APIs für Überwachung und Verwaltung zu testen. Sie können noch heute kostenlos mit einer 30-tägigen Testversion beginnen und sich selbst davon überzeugen, wie NGINX Plus Sie bei der Bereitstellung und Skalierung Ihrer Anwendungen unterstützen kann.
Über den Autor

Ähnliche Blogbeiträge
Die Zukunft von NGINX: Zurück zu unseren Open-Source-Wurzeln
Beim NGINX Sprint 2022 besinnen wir uns auf unsere Open-Source-Wurzeln. Erfahren Sie mehr über die Initiativen, die wir im kommenden Jahr verfolgen, und teilen Sie uns mit, was Sie sich wünschen.

Ein Leitfaden zur Auswahl eines Ingress-Controllers, Teil 1: Ermitteln Sie Ihre Anforderungen
Ein Ingress-Controller kann eines der leistungsstärksten Tools in Ihrem Kubernetes-Stack sein. Erfahren Sie, wie Sie Ihre Ingress-Anforderungen ermitteln, um die beste Option auszuwählen.
Bereitstellung des NGINX Ingress Controllers auf Amazon EKS: So haben wir getestet
Wir haben kürzlich den Lösungsleitfaden zum NGINX Ingress Controller um Empfehlungen zur Dimensionierung für Amazon Elastic Kubernetes Service (EKS) ergänzt. In diesem Blogbeitrag erläutern wir, wie wir diese Empfehlungen erarbeitet haben, und stellen Ihnen alle Informationen zur Verfügung, die Sie benötigen, um selbst ähnliche Tests durchzuführen.

Protokollierung des Datenverkehrs zwischen NGINX und Upstream-Servern bei CDN77
Bei der Fehlersuche bei Datenverkehrsproblemen zwischen NGINX und Upstream-Servern konnte CDN77 die benötigten Daten nur aus dem Fehlerprotokoll mit aktivierter Debug-Ausgabe beziehen, was die Leistung beeinträchtigt und riesige Dateien erzeugt. Daher entwickelte das Team ein neues benutzerdefiniertes Modul, das ausschließlich die benötigten Daten protokolliert.
Ankündigung von NGINX Plus R16
NGINX Plus R16 ist eine einheitliche, elastische Ingress- und Egress-Schicht für Anwendungen, die die Funktionen eines Load Balancers, API-Gateways und einer WAF vereint und neue Features wie clusterfähige Ratenbegrenzung, Schlüssel-Wert-Speicher, „Random with Two Choices“, verbessertes UDP-Load-Balancing und vieles mehr bietet.
5 Gründe für den Umstieg auf softwarebasiertes Load Balancing
Entdecken Sie fünf Gründe für den Wechsel zu einem softwarebasierten Load Balancer wie NGINX Plus, darunter Kosteneinsparungen, die Einführung von DevOps und eine einheitliche Lösung für alle Umgebungen.