Nginx Shared-Hosting für Wordpress

Dies ist ein Gastbeitrag geschrieben Austin W. Gunter, der Markenbotschafter von WP Engine Managed Wordpress Hosting-Plattform.

Wordpress-Entwicklung ist seit Anfang an mit Apache verflochten. Wordpress wurde auf Apache serviert werden gebaut. Vor kurzem hat Nginx auf Prominenz gestiegen Verkehr von 11,4% aller bekannten Verkehrs zu dienen.

Automattic bewegt WordPress.com über zu Nginx und verwaltet Wordpress-Hosts wie WP Engine und ZippyKid haben die Technologie als auch angenommen. WordPress.com hat öffentlich erklärt, sie Tausende von Servern haben Hunderttausende von Anfragen pro Sekunde zu dienen. Ich verbringe die meiste meiner Zeit im Gespräch über komplizierte Server-Technologie, aber ich hatte nicht eine gute Ressource tatsächlich zu erklären, in Konversations Begriffe gefunden, warum Nginx cool ist, warum die Leute es verwenden, und was die Vor- und Nachteile sind zwischen ihm und Apache. Dieser Beitrag soll erklären, was Nginx auf einem hohen Niveau ist, kein schaffen „wie man“ für Leute, die es selbst installieren möchten.

Nginx Shared-Hosting-Wordpress-C10K für die gleichzeitige steht

Zunächst einmal, Nginx und Apache nicht gleich sind, aber was macht sie anders? Was macht Nginx geeignet Hochleistungs-Web-Hosting-Aufgaben zu bewältigen - wie einen Ansturm von gleichzeitigen Anforderungen dienen, wenn ein Post der Titelseite des Hacker News oder Reddit macht? Was brauchen Sie noch Apache für?

CK10 Problem

Nginx wurde entwickelt, zum Teil, das C10K Problem zu lösen, oder die Optimierung Software Web-Servers eine große Anzahl von Kunden gleichzeitig zu handhaben. C10K steht für gleichzeitige zehntausend Verbindungen. Wenn eine Blog-Post auf die Titelseite von Hacker News oder Reddit trifft, Tausende von Besuchern auf einmal an Ihrer Seite kommen. Nginx ist ereignisbasiert und ist fantastisch bei einer gleichzeitigen Anfragen zu beantworten.

gleichzeitige Verbindungen

Nginx ist so konzipiert, Tausende von gleichzeitigen Verbindungen mit geringer CPU-Auslastung zu handhaben. Es ist ein nicht-blockierende ereignisgesteuerte Webserver, einen Prozess (oder eine geringe Anzahl von Prozessen) Verbindungen mit evented I / O zu handhaben. Apache hat mehrere Multi-Processing-Module ( „MPM“), aber für die meisten Linux-Systemen Apache-Standard ist das „prefork“ MPM. Apache empfiehlt die „Arbeiter“ MPM verwenden, wenn Sie PHP verwenden - da PHP ist nicht Thread-sicher. Ein Stück Code threadsicher ist, wenn sie nur freigegebene Datenstrukturen in einer Weise manipuliert, die durch mehrere Threads gleichzeitig die sichere Durchführung gewährleistet. Nginx der ereignisbasierte“Design ermöglicht es, Daten schnell zu bedienen und mit vielen gleichzeitigen Verbindungen, aber wir opfern die Fähigkeit von Apache PHP zu verarbeiten

Zusätzlich wird Apache dadurch begrenzt, wie viele Threads es hat CPU zu laufen, und Apache-Prozesse sind teuer. Bei 50-300MB pro Prozess, nach den gleichzeitigen Prozeß, Standard ist 256, Apache der Leistung sinkt. Nginx, auf der anderen Seite kann 10.000+ gleichzeitige Verbindungen mit etwa 2 MB Speicher handhaben, nie neue Threads oder Prozesse Laichen. Das ist absurd skalierbar.

Hosting

statische Assets

Nginx ist der König Statik dienen. Wo Apache mod_php in dem Speicher zu laden, hat ein Bild Anforderung zu bedienen, Nginx wird mit seinem extrem schnellen I / O-Statik wie Bilder, Javascript, CSS, HTML, etc. direkt an den Browser liefern. Konzeptionell, überträgt Nginx nur Daten, es nie verarbeiten, weshalb es so wenig Ressourcen erfordert zu laufen.

So wie übersetzen wir Wordpress PHP mit Nginx? Apache bündelt oft PHP mit seinen Prozessen, aber PHP zu verarbeiten, benötigt Nginx mit einem externen Prozess wie FastCGI gekoppelt werden, PHP-FPM, oder HTTP. Dies kann relativ leicht durchgeführt werden. Was mehr ist, durch Trennverfahren können wir tatsächlich mehr Geschwindigkeit gewinnt mit Nginx sehen. Es wird Anfragen weiterleiten PHP extern zu verarbeiten und die Antwort zurück an den Browser senden.

Darüber hinaus können diese unterschiedlichen Anforderungen auf verschiedenen Servern verarbeiten konfiguriert werden. Dies ist eine große Sache für Web-Host oder Sysadmin, weil es bedeutet, können sie angeben, welche die Server gehen anfordert, zu reduzieren Anfrage Rückstand. Es bedeutet auch, dass Server und Anwendungsprozesse separat neu gestartet werden kann.

Proxy Caching

WordPress.com macht intensiven Gebrauch von Nginx die Fähigkeit zu proxy_cache. Sie können Nginx Programmanforderungen an das Backend zu senden, aber auf dem Weg zurück haben, um es die Anfrage auf der Festplatte für „X Sekunden“ halten, so dass die nächsten Anfragen der Seite dienen können, ohne für jeden neuen Benutzer zu Apache zu haben, gehen Sie zurück.

3rd Party-Module

Mit Nginx gewinnt an Bedeutung, wir sehen, beginnen Entwickler kühle Module erstellen wir in Nginx zusammenstellen können, die Funktionalität hinzufügen, wir benötigen. Wie bei jedem Open-Source-Projekt, werden diese Module wahrscheinlich eine wichtige Quelle der Innovation auf dem Web-Server sein.

Das sind einige große Vorteile. Aber es ist wichtig zu beachten, dass Nginx keine angemessene Lösung für Shared-Hosting-Lösungen ist, und es ist sicherlich nicht notwendig für die täglichen Wordpress-Blogs, die nicht über eine hohes Maß an Verkehr sehen. Unter minimalem Verkehr, bemerken Besucher dürfen keine Geschwindigkeitsdifferenz zwischen Apache und Nginx. Sie wollen Wordpress off von Nginx dienen, wenn Sie eine Tages Traffic-Spitzen erwarten erfahren, und mögen Ihre Website auf und Laden von Seiten in Unter 1,5 Sekunden halten. Unter Last Nginx der ereignisbasierte Verarbeitung, die Fähigkeit Statik schnell zu dienen und proxy_cache Anfragen geben ihm die Fähigkeit, Zehntausende von Verbindungen auf 2 MB CPU zu dienen. Der gleiche Verkehr würde Apache verursachen Harakiri zu begehen.

Da Nginx so skalierbar ist, Automattic, WordPress.com und Managed Wordpress-Hosts wie WP Engine oder ZippyKid haben die Technologie angenommen, in der Regel zusammen mit Apache PHP zu dienen, und verwendet es massiv skalierbaren Hosting für Zehntausende von Domains zu liefern. Apache ist nach wie vor der Ort, komplexe Anforderungen zu verarbeiten, aber es kann nicht mit der Skalierbarkeit von Nginx halten.

Was ist Ihre Website läuft auf? Haben Sie die Installation von Nginx als Wordpress zu dienen? Lassen Sie mich in den Kommentaren wissen, was Sie verwenden.

Switched vor ein paar Wochen nach der E-Mail von meinem Gastgeber sagen, der müde wachsen würde ich über meine RAM-Zuweisung zu Nginx gegangen. Verbrachten Stunden damit, meine Seite konfigurieren mit starkem Verkehr auf Apache, aber keine Menge von Caching zu bewältigen .htaccess zwickt einen Unterschied gemacht. Switched zu Nginx, schuf eine grundlegende Conf und haben es nicht bereut. RAM-Nutzung ist unter Kontrolle und die Seite ist mehr ansprechbar. Genial.

Ich wechselte vor einem Jahr zu Jahr Nginx. Ich war sehr in das Projekt interessiert und nicht Lighttpd mögen.
Es stellte sich heraus, Nginx nur fantiastic ist, und ist definitiv der Weg zu gehen.
Routing-Anfragen mit Apache Feeld irgendwie dumm mir heute ...

Ich sehe. Also, warum einige Websites gibt es (auch tatsächlich Tonnen von ihnen), obwohl sie auf Apache laufen, führt immer noch besser als diejenigen, die mit NGIX sind.
Oh, übrigens, was ist Litespeed? Jeder Kommentar von Wordpress läuft auf Litespeed? Litespeed behauptet, dass sie 6x schneller als Apache

Ich glaube nicht, Nginx eine bessere Leistung als Apache, nicht in Wordpress-Website. PHP und Apache sind wie Brüder und viele Skripte sind mit Apache als die erste Wahl Webserver geschrieben, das einzige Problem ist, während Nginx ‚modern‘ ist und Griffe wirklich gut Traffic Burst, Apache ‚alten‘ bleibt und immer auf alle runde Leistung zielen. Die Frage des Verkehr Burst kann mit Lastausgleich behandelt werden. Ich mag Apache, weil es alle runden Aufführungen ist. Wordpress nicht scheitern kühn zu sagen, dass sie nichts gegen Nginx aber Apache bleibt nach wie vor die erste Wahl - codex.wordpress.org/Nginx

Haben Sie ein Performance-Benchmarking tatsächlich laufen, um zu sehen, ob Nginx besser oder schlechter in Ihrer Umgebung durchführt? Es ist eine Sache, es zu denken und fühlen, aber es ist eine andere Sache, es zu testen.

Wir verwenden Nginx hier auf WPForce.com und es läuft wirklich gut, viel besser als Apache jemals für uns getan hat.

In ähnlicher Weise sowohl auf Nginx laufen WordPress.org und WordPress.com - WordPress.com die größte einzelne Installation von Wordpress im Internet zu sein.

So vor kurzem ich von einem Host zum anderen migriert. Zurück Gastgeber hatte meine WP Website läuft auf Apache. Als ich an neuen Host einzurichten, war die Standard-Schnell CGI (und nginx nehme ich an) und bemerkte nicht, oder die Aufmerksamkeit auf die Differenz zahlen.

Alles lief gut, und schnell auf den neuen vps, aber nach ein paar Tagen begann ich, „502 falsches Gateway Fehler - nginx“ zu begegnen Fehler. Es passiert, wenn ich einen Blog-Post veröffentlichen, und klicken Sie auf „Vorschau.“ Ich habe noch diese Stelle veröffentlichen können, aber wenn ich es tun gibt viele Stücke der Seite gebrochen (verschiedene PHP-Anrufe, etc.) aber die Post ist da und in Takt.

Ich kann die Seite zurück zu einem früheren Wiederherstellungspunkt und behebt das Problem für ein paar Stellen (oder Tag), und dann das Problem wieder.

Ich habe 3 neue Plugins hinzufügen, bei der Migration (Sicherheit, AdRotate und Super-Cache). Ich habe versucht, die Sicherheit und AdRotate Plugins zu entfernen, um zu sehen, ob das Problem ist, und das Problem weiterhin besteht. die einzige, die ich nicht entfernt ist super-Cache.

Alle Ideen, was könnte diesen 502 falschen Gateway Fehler verursachen? Noch nie hatte dies, wenn auf Apache läuft.

In Verbindung stehende Artikel

Mamp zu leben Server Wordpress HostingHallo, ich habe angefangen, einige Probleme mit vor kurzem mit einer Wordpress-Website, die ich mit MAMP gebaut und dann zu einem Live-Server übertragen. Ich würde baute eine Website und starten Sie es, es sah gut aus, dann ...
Web-Hosting-In für Wordpress australianWenn Sie eine schnelle und reaktions Website wollen, müssen Sie es so nah Gastgeber wie Sie, wo Sie sind. Wenn eine Website betrachten, stellen Sie Anfragen hin und her von dem Server, und je weiter weg ...
Selbst Hosting vs Wordpress-Plug-Invon Tim Dorr / Flickr Wenn es darum geht, Autor Webseite zu etablieren, eine der verwirrenden Themen versteht sich von selbst Hosting: was es bedeutet, warum es vorteilhaft ist, und wenn Sie es tun sollten. Was...
Die beste Hosting für Wordpress Australia ZooHeute mag ich, wie viele der Top-Wordpress einen Blick nehmen Hosting-Unternehmen bis zu messen aus rein anwendungstechnischer Sicht. Jetzt werde ich die erste, die zugibt, dass die schnellsten Server mit ...
Skadate Hosting-Anforderungen für WordpressUm Wordpress zu laufen wir empfehlen Ihr Host unterstützt: Das ist es wirklich. Wir empfehlen Apache oder Nginx als robusteste und featureful Server für Wordpress läuft, aber jeder Server, der PHP unterstützt ...