WebSphere Extended Deployment kann die Verteilung von HTTP-Sitzungen auf die Anwendungsserver dynamisch und aktiv ändern.
WebSphere Application Server ordnet die HTTP-Sitzungen basierend auf der Affinität zu Anwendungsservern zu. Nachdem eine Sitzung in einem bestimmten Anwendungsserver eingerichtet wurde, werden nachfolgende Anforderungen für dieselbe Sitzung dem Anwendungsserver mit der eingerichteten Sitzungsaffinität zugeordnet.
Sitzungsaffinitäten bewirken, dass die Sitzungslast in einem Cluster langfristig gleichmäßig verteilt wird. Deshalb ist ein Ungleichgewicht im Allgemeinen nur von kurzer Dauer und somit tolerierbar. Sie können die Neuverteilung von Sitzungen jedoch einsetzen, um kurzfristige Störungen des Gleichgewichts zu überwinden, ohne die Leistungsvorteile von Sitzungsaffinitäten aufgeben zu müssen.
WebSphere Extended Deployment führt die Neuverteilung von Sitzungen ein, um eine gleichmäßige Verteilung von Sitzungen in einem Cluster zu beschleunigen. Sie können die Neuverteilung von Sitzungen verwenden, wenn Sie mit verteilten Sitzungen arbeiten und Ihre Sitzungen mit Cookies verfolgen. Standardmäßig ist in der Konfiguration von Anwendungssservern von WebSphere Extended Deployment die Sitzungsüberwachung mit Cookies, aber ohne verteilte Sitzungen aktiviert.
Informationen zum Konfigurieren der Anwendungsserver für verteilte Sitzungen finden Sie im Artikel Einstellungen für verteilte Umgebungen. Ausführliche Informationen zu den beiden verfügbaren Optionen finden Sie in den Artikeln Persistenz für Datenbanksitzungen konfigurieren und Replikation zwischen Speichern für den Peer-to-Peer-Modus (Standardreplikation zwischen Speichern).
Der Artikel "Replikation zwischen Speichern für den Peer-to-Peer-Modus konfigurieren (Standardreplikation zwischen Speichern)" beschreibt, wie Server in statischen Clustern konfiguriert werden. Diese Schritte gelten jedoch gleichermaßen für Server in dynamischen Clustern. Wenn Sie einen dynamischen Cluster konfigurieren, lassen Sie diesen erst im statischen Modus, so dass die Server im Cluster nicht automatisch gestartet werden. Nachdem Sie die Einstellungen für verteilte Umgebungen aller Server im Cluster geändert haben, stellen Sie den dynamischen Cluster auf Automatikmodus um. Wenn Sie den Modus nicht umstellen, müssen Sie die Server, die im dynamischen Cluster bereits gestartet sind, stoppen und erneut starten, damit die Änderungen an den Einstellungen für verteilte Umgebungen übernommen werden.
Wenn ein neuer Server in einem dynamischen Cluster verfügbar wird, sind diesem Server keine HTTP-Sitzungen zugeordnet. Die vorhandenen Server im dynamischen Cluster haben jedoch Sitzungen mit einer zugeordneten Affinität.
In WebSphere Extended Deployment Version 6.0 hat
die Neuverteilung von Sitzungen das Ziel, Sitzungen neu zu verteilen, damit jeder Server den gleichen Anteil aller vorhandenen Sitzungen erhält.
Die Anzahl der Sitzungen, die dem neuen Anwendungsserver zugeordnet werden, richtet sich nach der Anzahl der Sitzungen jedes vorhandenen
Anwendungsservers und der Wertigkeit jedes Anwendungsservers.
Die Funktion für die Neuverteilung von Sitzungen wird in jedem Anwendungsserver ausgeführt.
Jeder Anwendungsserver wird über neue verfügbare Anwendungsserver
sowie die Wertigkeiten und Sitzungsanzahl jedes Servers informiert. Mit diesen Informationen kann der Anwendungsserver bestimmen, wie viele Sitzungen vom aktuellen Anwendungsserver
auf den neuen Anwendungsserver verschoben werden.
Anschließend wird die Anzahl zu verschiebender Sitzungen an den HTTP-Servlet-Filter übergeben, der beim Serverstart
dynamisch hinzugefügt wird, um Sitzungsanforderungen abzufangen und umzuleiten.
In WebSphere Extended Deployment Version 6.0.1 und höher hat die Neuverteilung
von Sitzungen das Ziel, die Sitzungen so neu zu verteilen, dass die Anzahl
der Sitzungen, die in jedem Server des dynamischen Cluster ausgeführt werden,
proportional zur zugeordneten Wertigkeit der Server ist. Die Neuverteilung von Sitzungen wird vom DWLM (Dynamic Workload
Manager) ausgeführt. Der DWLM entscheidet basierend auf den Kenntnissen, die er über den gesamten
dynamischen Cluster besitzt, wie viele Sitzungen verschoben werden und wohin.
Die DWLM-Komponente berücksichtigt die Sitzungsposition und kann Sitzungsverschiebungen einleiten sowie
die Wertigkeit auf bestimmten Servern ändern.
Die Verschiebungen können durch die vom DWLM überwachten Ereignisse ausgelöst werden, z. B.
das Starten neuer Server, überlastete Server usw.
Wenn Sie die ObjectGrid-basierte HTTP-Sitzungsunterstützung anstelle
der herkömmlichen Sitzungsverwaltung von WebSphere Application Server verwenden, wird
die Neuverteilung von HTTP-Sitzungen nicht unterstützt.
Wenn Sie Sitzungen verwenden, die mit URL-Umschreibung oder SSL-IDs verwaltet werden, wird keine Neuverteilung durchgeführt. Auch für HTTP-POST-Anforderungen erfolgt keine Neuverteilung. Es wird keine Neuverteilung von Sitzungen durchgeführt, wenn der Zugriff auf die Sitzung durch ein direktes Absetzen der HTTP-Anforderung an den HTTP-Port des Anwendungsservers erfolgt und der On Demand Router dabei umgangen wird. Der PMI-Zähler für speicherresidente Sitzungen gibt Aufschluss über die verschobenen Sitzungen. Er verringert sich für die vorhandenen Server, wenn Sitzungen verschoben werden, und erhöht sich für die neuen Server, die gestartet werden. Neue Sitzungen hingegen werden gleichmäßig auf die Server im Cluster verteilt. Nähere Informationen zum Analysieren der PMI-Daten und den Best Practices für die Verwendung von HTTP-Sitzungen finden Sie im WebSphere Application Server Network Deployment Information Center.
Sie können die Neuverteilung von Sitzungen aktivieren oder inaktivieren, indem Sie das benutzerdefinierte Merkmal HttpSessionRebalanceOff in der Administrationskonsole entsprechend ändern. Nähere Informationen hierzu finden Sie im Artikel Benutzerdefinierte Merkmale für die Verteilung von Anwendungen.
Wenn die Neuverteilung von Sitzungen aktiviert ist und der neue Server im dynamischen Cluster gestartet wird, werden die folgenden Aktionen ausgeführt, um die Sitzungsanforderungen auf den neuen Server umzuverteilen.
Es folgt ein Beispiel für die Neuverteilung von Sitzungen in einer Umgebung mit Extended Deployment Version 6.0.1 und höher:
Related tasks
Dynamische Cluster erstellen und konfigurieren