httpd.conf Performance Einstellungen

Einige der wichtigsten Einstellungen in Bezug auf Server-Performance (Apache) ist die Datei httpd.conf. In dieser Datei sind sämtliche Parameter einzustellen, die über die Art und Weise der Verarbeitung von Anfragen (Requests) entscheiden.

HostnameLookups sollte auf jeden Fall deaktiviert werden (off). Diese Einstellung ist dazu da, zu einer IP den Hostnamen zu suchen, was recht viel Zeit kostet, wenn es aktiviert ist.

Wenn man Symlinks nicht benötigt, sollte man die Einstellungen Options FollowSymLinks und / oder SymLinksIfOwnerMatch ebenfalls deaktivieren, denn diese Einstellungen führen sonst dazu, dass für jede Serveranfrage zuerst das Dateisystem bemüht werden muss, was bei vielen Anfragen und langsamer Festplatte sehr schnell zum Flaschenhals werden kann.

Mit der Option AllowOverride all prüft Apache bei jedem Aufruf, ob eine .htaccess-Datei vorhanden ist. Wenn man das nicht benötigt, sollte diese Einstellung auch deaktiviert werden.

Die Direktive DirectoryIndex sollte nicht mit Wildcards (z.B. *) geschrieben werden, da das Durchsuchen sonst sehr aufwendig ist. Stattdessen sollte man eine Liste von Dateien angeben, die sich als index-Dateien eingebürgert haben: DirectoryIndex index.html index.cgi index.php

Mittels memory mapping speichert (bzw. mappt) der Apache Dateien im Speicher, z.B. beim Parsen von SSI. Auf einem Multiprozessorsystem sollte diese Einstellung deaktiviert werden, da so im Allgemeinen ein schnellerer Zugriff erfolgen kann.
Wenn der Apache in einer NFS-Umgebung läuft, sollte memory mapping auf jeden Fall deaktiviert werden, da sich der Apache eventuell aufhängt, wenn zwei Prozesse auf die gleiche Datei zugreifen.

Ich hoffe die Einstellungen können helfen Ihr System zu beschleunigen. Bald wird eine Beschreibung folgen, wie man die Prozesserstellung und -konfiguration möglichst performant regelt.

Jan hat 158 Beiträge geschrieben

7 Kommentare zu “httpd.conf Performance Einstellungen

  1. Jo sagt:

    register_long_arrays und register_argc_argv sollen laut Kommentar in der config wegen Performancegründen auch abgeschaltet werden wenn man sie nicht benötigt. Kanns nicht bestätigen, aber wenns dort steht glaube ich das 😉 (war bei Lighttpd aber gibts ja beim Apache auch)
    Lighttpd wäre übrigens mal ein Thema für den Blog, immerhin ist dieser viel schneller als Apache und auf Performance ausgelegt („… it is designed and optimized for high performance environments“).
    YouTube z.B. benutzt übrigens auch Lighttpd, was sicher keine schlechte Referenz ist.

  2. Jan sagt:

    Sicherlich ist Lighttpd ein Thema für diesen Blog, nur kann man das nicht so einfach vergleichen. Hat Lighttpd auch ein Benchmark-Tool wie Apaches ab.exe? Darüber wäre ein Vergleich von einzelnen Scripten möglich – ob das dann aber repräsentativ wäre, weiß ich nicht.

  3. Keks sagt:

    Bezüglich Symlinks: Ich denke eher, dass das aktivieren das Filesystem bemüht. Immerhin muss so geprüft werden, ob es sich um einen Symlink handelt.

Eine Antwort schreiben

Ihre E-Mail-Adresse wird nicht veröffentlicht. Benötigte Felder sind markiert mit *

You may use these HTML tags and attributes: <a href=""> <blockquote cite=""> <pre lang=""> <b> <strong> <i> <em>