Hallo Liste,
ich (bzw. meine Firma) betreibt einige Seiten erfolgreich mit Tomcat 5.5.7
mit Apache 2.0.53 und jk 1.2.8.
Ich habe vor kurzem von jk2 mit 5.0.18 auf jk mit 5.5.7 migriert und bin
von der neuen Version begeistert.
Um die stabilität unserer Anwendung zu erhöhen, habe ich mir jetzt einen
kleinen Cluster in unserer Testumbegung aufgebaut. (ähnlich wie Peter es
in der Columne macht). Prinzipiell sieht es sehr gut aus aber es haben
sich hier einige Fragen ergeben:
-->
im Buch "Professional Apache Tomcat5" (Wrox) ist eine Cluster mit jk2
aufgebaut und es werden Varianten mit Sticky- und ohne Sticky Sessions
dargestellt.
Da ich mir noch nicht vom Vorteil der Sticky Session im klaren bin
hab ich versucht die Umgebung ohne jvmRoute aufzubauen. Leider nimmt
Tomcat keine Requests entgegen, wenn der Eintrag jvmRoute nicht
konfiguriert ist. Es wird auch keine Meldung an der Konsole ausgeworfen.
Funktioniert jk mit und ohne StickySession? und wie sieht es dann mit
den jk2 Parametern StickySession bzw. Route aus?
Im SourceCode scheint mir diese Route doch sehr essenziell für die
Replikation zu sein!
Wenn ich ohne StickySession arbeite, dann müßte ich unter <Sender..
replicationMode synchronous oder pooled einstellen, so daß sichergestellt
ist, daß alle Sessiondaten sofort repliziert werden?
-->
in der Servlet 2.4 Spez. ist zu lesen, daß in der web.xml distributeable
zu setzten ist, wenn die Applikation im Cluster läuft! Leider ist dies
im balancer - Beispiel der Distro nicht der Fall. Inwieweit hat dieses
beim Tomcat Auswirkungen oder wird eh implizit durch das Replizieren
die NotSerializableException geschmissen?
-->
wie sieht es mit dem Session Manager aus. In der def. Konfiguration
(nicht geclustert) werden beim Shutdown die Sessions der App ins Filesystem
geschrieben. Ist dies beim Cluster auch der Fall und weiters, wird
dann nur mehr das Delta (die neuen Sessions und die inzwischen geänderten
Sessions) abgeglichen oder werden in diesem Fall alle Sessions neu
abgeglichen?
-->
Ich starte meinen Tomcat mit einem ServiceWrapper. Leider gibt es hier noch
ein kleines Problem und erst mit einem Timeout von 20 Sekunden wird der
Tomcat niedergefahren. Der Context wird aber sofort beendet und bis die
20 Sekunden vorbei sind sieht jk den Tomcat als lebendig und als Folge werden
alle Sessions (mit Sticky) die dieser Node zugeordnet sind weiter an diese
Node geleitet und mit einem 404 abgefertigt. Wie wird erkannt ob der Node aktiv
ist und weiters wie kann man einen aktiven Tomcat für jk dekativieren, sodaß
man erst dann den shutdown beginnt?
-->
Aufgrund meines Applikationsdesigns verwende ich statische Varibalen zum
protokollierens meiner Requests. Diese Daten werden dann aufgrund von einem
sessionDestroyed Event in die DB gespeichert.
Wird der Event dann an (in) allen Nodes geschnissen oder nur an der Node auf
der die Session zuletzt war?
Ich wäre (wie immer) für jeden Tip dankbar.
Hab zwar schon viele Zeilen vom Tomcat / Cluster Code gelesen, aber
konnt nicht alle Antworten finden.
lg Dietmar
ich (bzw. meine Firma) betreibt einige Seiten erfolgreich mit Tomcat 5.5.7
mit Apache 2.0.53 und jk 1.2.8.
Ich habe vor kurzem von jk2 mit 5.0.18 auf jk mit 5.5.7 migriert und bin
von der neuen Version begeistert.
Um die stabilität unserer Anwendung zu erhöhen, habe ich mir jetzt einen
kleinen Cluster in unserer Testumbegung aufgebaut. (ähnlich wie Peter es
in der Columne macht). Prinzipiell sieht es sehr gut aus aber es haben
sich hier einige Fragen ergeben:
-->
im Buch "Professional Apache Tomcat5" (Wrox) ist eine Cluster mit jk2
aufgebaut und es werden Varianten mit Sticky- und ohne Sticky Sessions
dargestellt.
Da ich mir noch nicht vom Vorteil der Sticky Session im klaren bin
hab ich versucht die Umgebung ohne jvmRoute aufzubauen. Leider nimmt
Tomcat keine Requests entgegen, wenn der Eintrag jvmRoute nicht
konfiguriert ist. Es wird auch keine Meldung an der Konsole ausgeworfen.
Funktioniert jk mit und ohne StickySession? und wie sieht es dann mit
den jk2 Parametern StickySession bzw. Route aus?
Im SourceCode scheint mir diese Route doch sehr essenziell für die
Replikation zu sein!
Wenn ich ohne StickySession arbeite, dann müßte ich unter <Sender..
replicationMode synchronous oder pooled einstellen, so daß sichergestellt
ist, daß alle Sessiondaten sofort repliziert werden?
-->
in der Servlet 2.4 Spez. ist zu lesen, daß in der web.xml distributeable
zu setzten ist, wenn die Applikation im Cluster läuft! Leider ist dies
im balancer - Beispiel der Distro nicht der Fall. Inwieweit hat dieses
beim Tomcat Auswirkungen oder wird eh implizit durch das Replizieren
die NotSerializableException geschmissen?
-->
wie sieht es mit dem Session Manager aus. In der def. Konfiguration
(nicht geclustert) werden beim Shutdown die Sessions der App ins Filesystem
geschrieben. Ist dies beim Cluster auch der Fall und weiters, wird
dann nur mehr das Delta (die neuen Sessions und die inzwischen geänderten
Sessions) abgeglichen oder werden in diesem Fall alle Sessions neu
abgeglichen?
-->
Ich starte meinen Tomcat mit einem ServiceWrapper. Leider gibt es hier noch
ein kleines Problem und erst mit einem Timeout von 20 Sekunden wird der
Tomcat niedergefahren. Der Context wird aber sofort beendet und bis die
20 Sekunden vorbei sind sieht jk den Tomcat als lebendig und als Folge werden
alle Sessions (mit Sticky) die dieser Node zugeordnet sind weiter an diese
Node geleitet und mit einem 404 abgefertigt. Wie wird erkannt ob der Node aktiv
ist und weiters wie kann man einen aktiven Tomcat für jk dekativieren, sodaß
man erst dann den shutdown beginnt?
-->
Aufgrund meines Applikationsdesigns verwende ich statische Varibalen zum
protokollierens meiner Requests. Diese Daten werden dann aufgrund von einem
sessionDestroyed Event in die DB gespeichert.
Wird der Event dann an (in) allen Nodes geschnissen oder nur an der Node auf
der die Session zuletzt war?
Ich wäre (wie immer) für jeden Tip dankbar.
Hab zwar schon viele Zeilen vom Tomcat / Cluster Code gelesen, aber
konnt nicht alle Antworten finden.
lg Dietmar
Comment