Hallo zusammen,
wie wäre es mit folgender Idee:

Jeder Request auf die Haupt-URL geht zunächst auf kleines System das nach
vorher beschriebenen Mittel aufgebaut wird und das nichts weiter tut als
einen geeigneten Server aus den Verfügbarer heraussuchen und den Client auf
diesen umzuleiten. Nun arbeitet der Client stets gegen die gleiche Maschine
- nämlich auf eine eigene bestimmte URL.

www.domain.tld -> Load Balancer Script -> www01.domain.tld

Das Modell kann man noch ausbauen indem man dem Redirect noch Parameter
mitgibt die dem anderen Server sagen das der Client vom Load Balancer kommt.
Falls der andere Server diesen Paramter (oder einen ungültige) nicht bekommt
kann der Server den Client ja zunächst über den Load-Balancer jagen
(Bookmark Problem).

Nach der Methode hat GMX lange gearbeitet und arbeitet in abgewandelter Form
soweit ich sehen kann auch heute noch. Shops wie Alternat ticken auch so.

DNS Round Robin ist an sich auch unkritischer, oder man möge mich
korrigieren, denn soweit ich weiss behält der Client die eine einmal
ermittelte IP für die Gültigkeitsdauer im Cache und das sollte eine
Web-Session evtl. überstehen. Hier bleibt das Risiko das man halt nicht
weiss wie lang die IP beim Client noch gültig ist und dann mitten in einer
Session ein IP wechsel stattfindet.

Dem PHP Session Problem kann man aber auch entgegenwirken indem man einen
anderen session.save_handler verwenden. Soweit ich weiss kann man damit
Sessions aus zentral in einer DB die ja eh vorhanden ist speichern. Somit
würden diese allen beteiligten Servern zur Verfügung stehen
(http://de.php.net/manual/de/function.session-set-save-handler.php). Hier
müsste man je nach Load Balancer Modell aber dafür sorgen das die Session
Info auch übermittelt wird - Stichtwort: Cookies, andere URL, transid etc.
Der Nachteil eines solchen save_handler's ist eine Verringerung der
Performance. Alternativ könnte man auch das Session-Temp-Verzeichnis auf
einen für alle Server zugänglichen Plattenbereich legen aber da entsteht
wieder ein Single-Point.

Evtl. ist noch bei Load Balancing anzumerken das wenn man es verwenden will
um Performance Probleme zu lösen man sich überlegen kann ob man statische
Inhalte nicht getrennt von den dynamischen Inhalten ausliefert. Statische
Inhalte z.B. images.domain.tld können dabei mit einem sehr schlanken flinken
HTTP Server behandelt werden.

Gruß,
Andreas



--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de"
      unsubscribe-Anfragen an [EMAIL PROTECTED]
           sonstige Anfragen an [EMAIL PROTECTED]
--------------------------------------------------------------------------

Antwort per Email an