english
 WOS 1 / Proceedings / Panels / 2. Freie Software-Projekte / Lars Eilebrecht / skript

Apache  



Ich bin Mitglied der ApacheSoftware Foundation und seit nunmehr zwei Jahren im Core-Teamder Entwicklungsgruppe des Apache-Webservers.In den folgenden fünfzehn Minuten möchte ich einige wichtigeAspekte auch zur Historie des Apache erzählen. Werfen wir einen Blickins Jahr 1995. Damals gab es den Apache noch nicht. Der meistverbreiteteWebserver damals war der NCSA-Webserver. NCSA steht für das NationalCenter for Supercomputing Applications an der Universität Illinois,USA. Leider kam damals, obwohl der Server so populär war, die Entwicklungins Stocken, als der Hauptentwickler Rob McCool das NCSA verlassen hat.Auf Grund der weiten Verbreitung gab es sehr viele Leute, die Bedarf hattenan einer Weiterentwicklung des NCSA-Webservers oder die generell einenWebserver brauchten. Das heißt, viele Leute haben angefangen, eigenständigFehler im NCSA-Server zu beheben und neue Funktionalitäten einzubauen.Eine kleine Gruppe von Leuten schloß sich damals unter dem NamenApache-Group zusammen und beschloß, auf Basis des NCSA-Servers einenneuen Webserver herauszubringen. Es wurden mehr und mehr Patches zusammengetragen.Aus der Phrase A Patch Server wurde schließlich der Name Apachegeboren. Die Feder als Anspielung auf die Apachen-Indianer war nur so eineFolgerung daraus. Die erste Version wurde 1995 herausgegeben. Nicht ganzein Jahr später hatte der Apache den NCSA-Webserver von der Spitzeverdrängt und war zum meistgenutzen Webserver im Internet geworden.Die 50-Prozent-Hürde bezüglich des Marktanteils hat der Apachedann im Jahr 1998 überschritten. Der aktuelle Stand sieht so aus,daß der Apache inklusive aller darauf basierenden Webserver mittlerweileeinen Anteil von knapp 62% hat. Microsoft liegt bei 22% mit ihrem InternetInformation Server. Netscape mit ihren diversen Produkten, wie dem FastTrack Commerce Server, liegen bei etwas über 7%. Diese Zahlen stammenvon einer Firma Namens Netcraft,die jeden Monat ein sogenanntes Web Server Survey durchführtund dabei mehrere Millionen Webserver im Internet abfragt und auswertet,welche Server-Software dort verwendet wird.  

Nun genug der ganzen Zahlen.Werfen wir einmal einen Blick hinter die Kulissen. Die Apache-Group: Esgibt derzeit 22 aktive Mitglieder, ein Großteil aus den USA. Fastalle Gründungsmitglieder stammen aus den USA. Und noch jetzt stehtder Server www.apache.org in San Francisco,in Kalifornien, USA. Weitere Mitglieder stammen aus Kanada, England, Neuseeland,Italien und schließlich gibt es auch drei Mitglieder aus Deutschland.Wie bei den meisten Open Source-Projekten ist das zentrale KommunikationsmittelEmail, genauer gesagt eine Mailingliste. Diese Liste ist noch dazu öffentlichfür jedermann. Wer sich auch nur im geringsten für Apache interessiertund einmal mitbekommen möchte, was da so passiert, kann sich auf dieserListe eintragen und gegebenenfalls auch mitdiskutieren, wenn er irgendwelcheAnregungen hat oder etwas zu einem Thema sagen möchte. Man sollteschon ein gewisses Maß an Interesse mitbringen. Der Trafficder Liste schwankt sehr stark. Es ist durchaus nicht unüblich, überdiese einzige Liste mehr als hundert Mails zu bekommen. Es gibt noch weitereMailinglisten: Announce-Listen und interne Listen. Aber das Hauptkommunikationsmittelist, wie gesagt, diese eine öffentliche Mailingliste.  

Bei vielen Open Source-Projektenist es so, daß es keine festgelegte Aufgabenverteilung gibt. Dasist auch beim Apache so. Das heißt, im Prinzip wird das gemacht,was jemanden interessiert. Jemand implementiert und programmiert das, wozuer Lust hat. Es gibt eine gewisse Struktur, das heißt, die Leute,die bestimmte Module entwickelt haben, kümmern sich auch typischerweiseum die Weiterentwicklung dieser Module. Erwähnen sollte ich die Tatsache,daß es keinen Leiter, keinen Chef dieses Projektes gibt. Alle Entscheidungen,die getroffen werden, sei es nun welche Patches, welche neuen Funktionalitätenin den Apache eingebaut werden, was in der Zukunft passieren soll und sonstigeEntscheidungen werden alle auf Basis eines Mehrheitsbeschlusses entschieden.Das heißt, es wird auf der Mailingliste darüber abgestimmt,ob ein bestimmter Patch eingebunden wird oder nicht. Bei Patches, die einegroße Änderung darstellen, ist es typischerweise so, daßsich mindestens drei Mitglieder der Apache-Group damit beschäftigthaben müssen, das heißt, es getestet haben und dafür seinmüssen, daß der Patch eingebaut wird. Und es darf keinerleiGegenstimmen geben. Wenn es sie gibt, dann wird typischerweise das Problem,das jemand damit hat, behoben und, wenn der Patch dann für sinnvollerachtet wird, irgendwann eingebaut.  

Der Apache selber ist mehrals nur die Summe aus der Arbeit der Apache-Mitglieder. Im Laufe der Zeitgab es sehr viele Leute, die -- teilweise regelmäßig, teilweisegelegentlich, zum Teil auch nur in einer einmaligen Aktion -- bestimmteFehler im Apache behoben und Patches eingereicht haben. Das ganze fingan bei simplen Bug Reports und ging über Feature Requests,über Ideen der Weiterentwicklung bis hin zu Patches oder größerenFunktionserweiterungen des Apaches, die nicht von Leuten der Apache-Groupgemacht werden, sondern von den Nutzern. Von den Leuten, die auch Spaßan der Entwicklung haben und einen kleinen Teil dazu beitragen wollen,daß der Apache auch weiterhin der beste Webserver bleibt oder zumindestder meistverbreitete Webserver, den es im Internet gibt.




*Hier ein Bild von einigenEntwicklern der Apache-Group, damit man sieht, daß hinter dem Namenauch Leute stehen. Das Bild wurde letztes Jahr im Oktober bei der ApacheConin San Francisco aufgenommen.  

Die Frage, warum der Apacheso erfolgreich ist, läßt sich schwer beantworten. Ein großerPunkt ist sicherlich die Tatsache, daß er auf fast allen gängigenPlattformen läuft. Entwickelt wurde der Apache auf und für Unix-Systeme,das heißt, er läuft derzeit auf nahezu allen Unix-Derivaten:Linux, BSD, Solaris, AIX, Irix was auch immer. Seit Version 1.3 läuftder Apache mittlerweile auch auf Windows-Systemen. Ich würde generellimmer Unix bevorzugen, aber wer es unbedingt braucht, der kann es auchauf Windows laufen lassen. Dann gibt es noch einige eher exotische Plattformen,wie z.B. die BS2000 Mainframe-Systeme von Siemens, oder auch, wer nocheinen hat, der Amiga-Rechnern.  

Ein anderer wichtiger Punkt,um den es hier auf der Konferenz eigentlich geht: Open Source. Der Apacheentspricht der Open Source-Definition. Ich bekomme den Quellcode. Die Softwareist frei verfügbar, kann eingesetzt werden, sowohl für private,wie kommerzielle Zwecke, ohne jegliche Lizenzgebühren entrichten zumüssen.  

Stichwort Lizenz: Es gab voreiniger Zeit, ich glaube, auf slashdot.org, eine Umfrage: 'Ohne nachguckenzu müssen, würden Sie sagen, daß der Apache unter der GPLvertrieben wird, ja oder nein?' Ein Großteil der Leute, etwa um dieachtzig Prozent haben gesagt: 'Ja, der Apache wird unter der GPL vertrieben.'Das stimmt nicht. Der Apache hat eine eigene Lizenz, so ähnlich wiebeim XFree-Projekt. Er wird unter einer BSD-Style-Lizenz vertrieben,das heißt, es gibt vom Prinzip her nur zwei Einschränkungen.Wenn eine Firma den Apache modifiziert und weitervertreiben will, mußdabei stehen, daß das Produkt auf dem Apache basiert oder Teile davonin das Produkt eingefloßen sind. Und dieses Produkt darf dann nichtApache heißen. Das sind die einzigen Einschränkungen. Die weiterenEinschränkungen der GPL, daß dann der Source mitvertrieben werdenmuß, gelten bei dieser Apache-Lizenz nicht.  

Ein anderer Grund, warum ersicherlich erfolgreich ist, ist die Tatsache, daß er eigentlich schonimmer sehr stabil war. Es hat sich herausgestellt, daß der Apacheauch für Mission critical-Anwendungen durchaus geeignet ist.Er ist perfomant und bietet eben diese Stabilität und natürlichauch einen großen Funktionsumfang. Der Apache benutzt ein modularesSystem, das heißt, es gibt einen Kern des Apache, der die wichtigenFunktionen zur Verfügung stellt. Das reicht im Prinzip aus, um normaleHTML-Seiten auszuliefern. Sobald ich weitere Funktionen brauche, wie z.B.CGI oder Protokollierungsfunktionen, um herauszubekommen, wieviele Leutemeine Seiten betrachtet haben, gibt es entsprechende Module. Ein Großteildieser Module ist schon bei der normalen Standarddistribution des Apachemit dabei, angefangen von CGI und Protokollierungsfunktionen bis URL-Manipulationsroutinenund Server-side-Includes. Was auch sehr interessant ist: mittlerweilegibt es einen sehr großen Markt von Drittanbietern von Modulen fürden Apache, sei es nun Open Source oder auch kommerzielle Produkte. Esgibt derzeit etwas über hundert verschiedene Module für den Apache,wie Datenbankanbindung z.B. PHP und in den Apache integrierte Interpreterfür Python oder Perl. Was auch sehr stark im Kommen ist, sind Java-Servlets,das heißt Server-side-Java.  

Stichwort: ApacheSoftware Foundation. Zur Klärung: Apache-Group und Apache SoftwareFoundation sind zwei verschiedene Sachen. Die Apache Software Foundationwurde am 1. Juni 1999 gegründet. Es handelt sich um eine Not-for-ProfitCorporation mit Sitz in Delaware, USA. Die Idee dahinter war, eineUnterstützung für Open Source-Projekte bieten zu können,sei es in Form von Hardware, Netzanbindung oder Connectivity bis hin zufinanzieller Unterstützung, soweit dies möglich ist, und auchvor allem, wenn nötig, eine rechtliche Unterstützung. Die Motivationwar ähnlich wie bei XFree86, daß wir auch "Verträge" odersonstige Vereinbarungen mit Firmen ermöglichen und unterzeichnen können.Das Board of Directors der Apache Software Foundation setzt sichausnahmslos aus Leuten der Apache-Group zusammen.  

Vom Prinzip her ist jetzt dasApache-Webserver-Projekt "nur" ein Projekt unterhalb der Apache SoftwareFoundation. Weitere Projekte, die bisher schon in ähnlicher Weiseunter dem Namen Apache gelaufen und jetzt offiziell ein Projekt der Foundationsind, sind das PHP-Projekt, das das PHP-Modulzur Verfügung stellt, das mod_perl-Projektund -- durch eine Kooperation mit Sun neu hinzugekommen -- das Jakarta-Projekt,das mit Hilfe von Sun einen Open Source Servelet Engine fürden Apache zur Verfügung stellen will. Die Entwickler sind zum TeilMitarbeiter von Sun, aber auch die Leuten, die bisher dieses freie JServ-Modul,das bisher für den Apache verfügbar war, entwickelt haben. Natürlichwird auch dieses Projekt unter der Apache-Lizenz vertrieben werden, wieauch alle weiteren Projekte, die vielleicht mal irgendwann dazu kommenwerden. Wobei hier der Fokus auf Projekten liegt, die etwas mit dem Apachezu tun haben oder generell mit dem World Wide Web. Vor allem soll dadurchauch die Motivation hervorgerufen werden, daß sich weitere Entwickleran den Projekten beteiligen, und vor allem auch Firmen.  

Wir hatten in der Apache-Groupschon bevor es die Foundation gab mehrere Vertreter von Firmen mit im Boot.Ein bekanntes Beispiel ist hier IBM, die den Apache in ihrem WebSphere-Produkteinsetzen. Sie unterstützen die Entwicklung des Apache mit einem eigenenApache-Development Team. Ich glaube, es sind derzeit 13 bis 14 Leute.Sie fördern somit auch die weitere Entwicklung des Apache. Ein weiteresBeispiel ist Siemens, die den Apache bei ihren BS2000 Systemen als Standard-Webservermit ausliefern und durch einen Mitarbeiter, der sich damit beschäftigt,dafür sorgen, daß Portierungsarbeiten vorgenommen werden unddarauf geachtet wird, daß auch zukünftige Versionen des Serversauf BS2000 lauffähig sind. Ein weiteres Beispiel ist Appel. Sie habenselber den Apache auf Mac OS X oder damals Rhapsody portiert. Es wird wohldemnächst ein Mitarbeiter, der dafür verantwortlich war, auchMitglied der Apache-Group, bzw. jetzt der Apache Software Foundation werden.Das Hauptziel in dieser ganzen Geschichte ist, Open Source und Apache ansich auch in Zukunft verfügbar machen zu können, daß derApache auch weiterhin einer der erfolgreichsten Webserver sein wird. Wirwerden sicherlich einen Marktanteil von hundert Prozent niemals erreichen,aber probieren wird man es doch können, oder?


(Transkription Katja Pratschke) 
 
 
About the Apache HTTP Server Project 
Software Foundation
Apache Server Project  
PHP: Hypertext Preprocessor  
Jakarta Project  
The Apache/Perl integration project: mod_perl  


[^] nach oben


Creative Commons License
All original works on this website unless otherwise noted are
copyright protected and licensed under the
Creative Commons Attribution-ShareAlike License Germany.