Apache vs. NGINX

Apache vs. NGINX
Apache vs. NGINX

Der Bessere ist ja stets der Feind des Guten. Insbesondere wenn Sie die Frage stellen, mit welcher Server-Software Ihr Gegenüber seine WebSite betreibt, erhalten Sie die Standard-Antwort: „Apache natürlich. Was sonst?“ Doch das könnte sich mit NGINX bald ändern. Denn anstatt des bekannten Klassikers – never change a running system – setzen immer mehr professionelle Anwender wie zum Beispiel die BB-ONE.net auf den Newcomer. Und das mit großem Erfolg.

Apache – eine Erfolgsstory

Seit seiner Einführung im Jahr 1995 entwickelte sich der Apache zum Platzhirschen unter den Webservern. Denn er ist weltweit das am häufigsten verwendete System. Der Grund ist einfach. Viele Zusatzmodule werden einfach „on the fly“ eingebunden, sobald sie benötigt werden. Die Wissensbasis zum Thema Apache ist groß. (Fast) jeder Hoster setzt ihn als Standardsoftware für Webservices ein. Die Software ist für kommerziellen Einsatz frei verfügbar. Die Administration ist (für den Wissenden) recht einfach.

Alle sind zufrieden, also warum wechseln?

Ein großes Problem beim Apache war und ist die mangelnde Skalierbarkeit. Das bedeutet, dass die Performance in die Knie geht, wenn die Anzahl der gleichzeitigen Anfragen stark steigt. Für jede neue Anfrage eröffnet der Apache einen neuen Prozess. Jeder neue Prozess benötigt zusätzlichen Arbeitsspeicher.

NGINX: Skalierbarkeit und Performance im Fokus

Genau an dieser Stelle zeigt sich im direkten Vergleich der Vorteil für den „Newcomer“ NGINX.  Bei steigender Zahl von gleichzeitigen Anfragen ändert sich die Anzahl der geöffneten Prozesse nicht. Damit bleibt der Ressourcen-Hunger gleich. NGINX ist 2005 von Anfang an mit dem Hintergedanken Skalierbarkeit und Performance konzipiert worden.

Wermutstropfen

Doch während Apache die Zusatzmodule dynamisch lädt, müssen diese beim NGINX gleich in das System einkompiliert werden.  Das ist eigentlich kein Problem, wenn Sie wissen, was Sie brauchen. Oder wollen. Und es hat auch den Vorteil, dass integrierte Funktionen schneller verfügbar sind. Doch für dynamische Inhalte ist dies ein Nachteil. Hier benötigt NGINX Zusatzsoftware, während der Apache ohne auskommt.

Fazit:

Beide Lösungen haben Vor- und Nachteile. Die Konfiguration ist beim NGINX etwas aufwendiger als beim Apache. Der NGINX skaliert dafür jedoch deutlich besser.