Zustand prüfen trotz Loadbalancer

Diskutiere Zustand prüfen trotz Loadbalancer im Netzwerkprogrammierung Bereich.
D

danielmaann

Hallo zusammen
In letzter Zeit beschäftige ich mich mit einem Thema und bei dem geht es um den Zustand.
Bei der REST-Technologie wird ja von einer zustandslosen Technologie gesprochen. Trotzdem werden viele Applikationen damit geschrieben und auch "Zustände" werden durchaus da generiert.
Z.B. Bei einem Login wird ein Token generiert das, dann immer an die Schnittstelle gesendet wird. In meinem Fall nehmen wir nun das JWT (Json Web Token).
Das funktioniert ja auch alles einwandfrei. Was mich aber wunder nimmt ist, wenn ich zwei Instanzen der Software hochfahre, davor einen Loadbalancer habe, woher weiss der eine Server welche Tokens beim anderen sind?

Kurz und knapp:
Eine Instanz, Login mit Token und Prüfung = Kein Problem
Bei zwei Instanzen und einem LB kommt man nicht immer auf die gleiche Instanz. Wie gleichen diese zwei sich ab das beide von den selben Tokens wissen?
 
mrBrown

mrBrown

JWT hat den Vorteil, dass man Serverseitig nicht zwingend Zustand halten muss.

Als Beispiel: du generierst den Token mit den nötigen Informationen und signierst diesen dann. Nur das zum Signieren genutzte (z.B. Key oder Zertifikat) muss allen Servern bekannt sein, dies ist aber nicht Session-Abhängig.
 
D

Dukel

Wenn wirklich ein Zustand gespeichet werden muss dann geht das mit einer dritten Instanz wie einer Datenbank.
D.h. es gibt eine (verfügbar aufgestellte) Datenbank, die die Session Informationen speichert und beide Applikationsserver greifen auf diese Datenbank zu.
 
J

JuKu

Was mich aber wunder nimmt ist, wenn ich zwei Instanzen der Software hochfahre, davor einen Loadbalancer habe, woher weiss der eine Server welche Tokens beim anderen sind?
Kurz und knapp:
Entweder werden diese Informationen irgendwo gespeichert (z.B. in einem Distributed Cache oder in einer Datenbank) oder die beiden Server müssen sich unterhalten und untereinander die Daten austauschen.

Bei zwei Instanzen und einem LB kommt man nicht immer auf die gleiche Instanz. Wie gleichen diese zwei sich ab das beide von den selben Tokens wissen?
Also erstens kannst du einen LB immer so konfigurieren, dass der letzte Server bevorzugt wird (z.B. über IP oder bei HTTP über Cookies). Ansonsten siehe oben, Datenbank oder Interconnects.
 
Thema: 

Zustand prüfen trotz Loadbalancer

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben