Moin Christoph!
Das im Augenblick Wikipedia auf nur einem einsamem Rechner gehostet wird spielt da keinerlei Rolle.
Momentan sind es 39.
Ja, ich habe schon vermutet, das es mehr als einer ist - es war blanke Polemik nur einen anzugeben. Aber ob einer, 39 oder 100, es sind für den Bedarf _und_ den wenig effektiven Code einfach zuwenig.
Ich habe den Code zwar selber nie gesehen, aber es geht die Runde, das er _wirklich_ schlecht ist. Im Gegensatz zu meiner üblichen Home-Improvement-Empfehlung: "mehr Eisen!" würde ich mal schauen, ob denn niemand Zeit für einen Codereview oder gar Neuschrieb hat.
Naja, der ein oder andere Dev wird da vermutlich schonmal einen Blick draufgeworfen haben ;-)
Allerdings wundere ich mich da auch ein wenig. Wenn ich den Statistiken glauben kann, kommen so um die 1000 Requests die Sekunde bei den Squids an, und das mit ca. 80% Cache-Hits. Vor allem Lastspitzen Dank ./ & Co. sollten diese recht gut abfangen. Ich kann mir ehrlich gesagt nichts viel effizienteres für sowas vorstellen, als solche Squid-Server. Außerdem verwenden die ja schon Opcode-Caches für PHP, sogar memcached zum cachen, ebenso einen eigenen Cache um DB-Requests zu sparen (http://meta.wikimedia.org/wiki/Cache_strategy). Und dann MySQL 4 Master->Slave Replikation. Ich denke solange man einen entsprechenden Master-Server bekommt, ist das recht effizient. Irgendwann wird das aber zum Problem, denke ich. Die Datenbank hat zur Zeit wohl um die 3 GB, vor 1 Jahr waren es noch 700 MB, und vermutlich ist das nur ein Snapshot der aktuellen Daten. Keine Ahnung wie hier die Versionskontrolle funktioniert.
Was ich aber nicht verstehe ist das Verhältnis, wieviele Server für Apache/PHP benötigt werden. Wenn man von den 1.000 Requests/Sekunde ausgeht, von denen 80% schon von den paar Squids abgefangen werden, bleibt ja sooo viel nicht mehr übrig.
Naja, aber ohne sich richtig tief, und am besten mit Profiler... damit zu beschäftigen, kann man dazu nicht wirklich viel sagen. Aber es würde mich wundern wenn unter den vielen Devs niemand sowas bisher mal probiert hat. Stehen vermutlich vor der Zwickmühle einen Teil der Dynamik die ein Wiki ausmacht aufgeben zu müssen, wenn das ganze effizienter werden soll.
Naja...
Grüße
Andreas
PS: http://meta.wikimedia.org/wiki/Image:Wikimedia-servers-2004-12-10.png
SELFHTML Linkverzeichnis: http://aktuell.de.selfhtml.org/links/