Ich habe einen Webdienst, der einen Benutzer authentifiziert, und wenn er erfolgreich ist, gibt er ihnen ein JSON Web Token, mit dem sie ihre Sitzung beibehalten können.
Momentan habe ich nur einen Server, aber ich möchte diesen im Idealfall auf zwei oder mehr aus Gründen der Leistung erhöhen, aber ich bin mir nicht sicher, wie das mit verschiedenen Servern funktionieren wird, da sie unterschiedliche Instanzen haben Wer ist derzeit angemeldet?Wie man Benutzersitzungen über mehrere Server verwaltet?
Zum Beispiel untersucht mein Dienst die JWT der Client zurückgibt, und (vorausgesetzt, es ist ein gutes Token), wird die Benutzer-ID und Sitzung und prüfen, ob ein Benutzer mit diesem angemeldet ist Session-ID.
Wenn jedoch beispielsweise die Middleware vor der Web-Service-Schicht feststellt, dass der Server, zu dem der Benutzer ursprünglich angemeldet war, derzeit nicht verfügbar ist und die Anforderung an eine andere Serverinstanz des Web-Service weiterleitet, wie soll der Authentifizierungs-Controller gemeint sein beurteilen, ob die Anfrage gültig ist?
Unten finden Sie eine sehr einfache Version meines Dienstes, mit den schwarzen Pfeilen für die normale Kommunikation und den roten Pfeilen für die Kommunikation für den Fall, dass Layer 1 entscheidet, die Anfrage an Instance Two weiterzuleiten. Ebene Eins ist im Wesentlichen sehr einfach und führt nicht wirklich etwas anderes aus, als den Datenverkehr zur nächsten Ebene zu leiten, abhängig von der Verfügbarkeit der Ebene zwei Instanzen.