phpbar.de logo

Mailinglisten-Archive

[php] msession aufklärung

[php] msession aufklärung

Martin Spuetz mas at spuetz.ath.cx
Mit Feb 14 21:55:15 CET 2007


Johannes Weber wrote:
> Meine 2. Frage:
> Wir sind derzeit dabei, eine community neu in php zu schreiben, bei der die einzelnen bereiche auf mehrere server aufgeteilt werden sollen (forum.domain.com, profil.domain.com).
> Wie bewerkstellige ich am besten die Session-übergaben unter den Servern, sodass ich von server a auch auf die session-daten des server b zugreifen kann.
> Lässt sich das "einfach" mit den normalen php-sessions machen?
> Wäre die eleganteste lösung für dieses problem msession?

Wenn ihr nach Bereichen aufteilt, was macht ihr denn wenn z.B.
forum.tld der Last nicht mehr gewachsen ist? Oder wenn forum.tld ausfällt?

Ich halte die Aufteilung nach Diensten für sinnvoller, z.B. Datenbank
und Web (einfaches Beispiel).

Auf der Datenbankseite bietet sich MySQLs Master/Slave Replication an.
Bei den Webservern ist es auch relativ einfach, bei einem verteilten
Session-Handling. Manche Load-Balancer machen das über Cookies und
leiten den entsprechenden Requests immer wieder an den gleichen
Webserver, ist für die Anwendung dann transparent.
Da ihr dir Andwendung sowieso neu schreiben wollt, bietet sich
memcached [1] geradezu an.

Habt ihr viele statische Dateien, kann ein kleiner, flinker Webserver
(z.B. lighttpd) die Dateien viel schneller ausliefern als der Apache.

Vielleicht bietet es sich auch an, den Webservern einen Reverse Proxy
vorzustellen.

Gruss,
Martin

[1] http://www.danga.com/memcached/

php::bar PHP Wiki   -   Listenarchive