Lighttpd – Fettarm läuft schneller
Um sich von den Mühen seines Diploms an der FH Kiel abzulenken, beschäftigte sich Jan Kneschke mit der Optimierung von Programmcode eines minimalen Webservers. Das Ziel war, bis zu 10.000 gleichzeitige Verbindungen zu ermöglichen und die Anfragen ohne Verzögerung zu bearbeiten. Nach nunmehr knapp drei Jahren ist Lighttpd [1] ein leistungsfähiger Webserver geworden, der sich wachsender Beliebtheit erfreut und selbst von Größen wie YouTube und WikiMedia eingesetzt wird. Die Sympathie kommt nicht von ungefähr – die Installation gestaltet sich einfach, selbst die Kompilation aus dem Quellcode gelingt unkompliziert. Im Gegensatz zu Platzhirschen wie Apache ist Lighttpd sehr kompakt und nur von wenigen Voraussetzungen abhängig.
$ ldd /usr/sbin/lighttpd linux-gate.so.1 => (0xffffe000) libpcre.so.3 => /usr/lib/libpcre.so.3 (0xb7ec2000) libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7ebe000) libattr.so.1 => /lib/libattr.so.1 (0xb7eb9000) libssl.so.0.9.8 => /usr/lib/i686/cmov/libssl.so.0.9.8 (0xb7e79000) libcrypto.so.0.9.8 => /usr/lib/i686/cmov/libcrypto.so.0.9.8 (0xb7d37000) libfam.so.0 => /usr/lib/libfam.so.0 (0xb7d2f000) libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7d18000) libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7bd7000) /lib/ld-linux.so.2 (0xb7eee000) libz.so.1 => /usr/lib/libz.so.1 (0xb7bc2000)
Listing 1
Die Konfiguration von Lighttpd mag für eingefleischte Apache-Administratoren etwas ungewohnt erscheinen. Lighttpd unterstützt das Setzen von Variablen innerhalb der Konfigurationsdatei, selbst mehrdimensionale Felder (Arrays) können verwendet werden. Nach etwas Einarbeitungszeit lernt man die Vorteile jedoch zu schätzen.
var.subdomain = "rails"
[...]
server.name = var.subdomain + ".t3n.de"
index-file.names += ("index.rhtml")
[...]
Listing 2
Der Leistungsumfang von Lighttpd ist groß: Virtuelle Server, dynamisches Umschreiben von URLs (ähnlich Apaches mod_rewrite), Kompression mittels zLib, WebDAV, Anbindung an RRDTool und Streaming von Flash-Videos (FLV) stehen neben vielen weiteren Möglichkeiten zur Verfügung.





![Diese Tools nutzen Entwickler für unterschiedliche Aufgaben [Infografik]](http://t3n.de/uploads/t3n-news-post-351639_symbolbild-werkzeug-tool_medium.jpg)