Sticky Sessions
Kurz: Bei Sticky Sessions leitet ein Load Balancer alle Anfragen eines Nutzers immer zum selben Server weiter, damit dort gespeicherte Sitzungsdaten wiedergefunden werden.
Genauer: Speichert ein Server die Sitzung im eigenen Arbeitsspeicher, wüssten andere Server nichts davon. Der Load Balancer merkt sich daher die Zuordnung, meist über ein Cookie oder die IP-Adresse.
Im Detail
- Nachteil: Fällt der Server aus, ist die Sitzung weg. Die Last verteilt sich ungleich.
- Besser: Sitzungen in einem gemeinsamen Speicher (Redis, Datenbank) halten oder in einem signierten Token (zum Beispiel JWT) beim Nutzer ablegen. Dann kann jeder Server jede Anfrage bedienen („stateless”).
- Skalieren: Zustandslose Server lassen sich beliebig hinzufügen und wieder entfernen.
- Ausnahme: WebSockets bleiben ohnehin an einer Verbindung hängen.
Siehe auch: Load Balancing