Was ist Serveraffinität?
Wenn sich ein Benutzer bei einem Computersystem im Internet anmeldet, verwendet er möglicherweise die zugrunde liegende Serveraffinitätstechnologie. Dies ist eine Technik, bei der ein einzelner Benutzer an einen bestimmten Computerserver im Internet gebunden ist. Diese Eins-zu-Eins-Korrelation ist in der Regel für Computeranwendungen erforderlich, in denen wichtige Informationen zu einer Person gespeichert werden. Einige Beispiele umfassen Online-Rechnungszahlungssysteme, Bank- und Einzelhandelsdienstleistungen.
Serveraffinität ist eine Computertechnik, bei der Kundeninformationen vorübergehend auf einem Computergerät gespeichert werden, um den Abschluss von Online-Verkaufstransaktionen zu ermöglichen. Dies wird am häufigsten in Einzelhandelsverkaufsprogrammen verwendet. Dadurch wird sichergestellt, dass eine Transaktion auf dem Server bis zum Abschluss des Kaufs intakt bleibt.
Die meisten großen Computeranwendungen sind auf viele Servercluster verteilt. Dieser verteilte Prozess erfordert eine Art Serveraffinität, um sicherzustellen, dass die Sitzungsaktivität des Benutzers für jede Anforderung verfügbar ist. Ein Load Balancer verwaltet diesen Prozess normalerweise auf ähnliche Weise wie ein automatisierter Verkehrspolizist. Bei der Interpretation jeder nachfolgenden Anforderung bestimmt der Lastenausgleich, welcher Server den Prozess verwalten soll.
Es gibt viele Möglichkeiten, die Serveraffinität zum Funktionieren zu bringen. Eine der am weitesten verbreiteten Techniken ist das Sticky-Session-Management. Dies ist ein Prozess, bei dem Benutzersitzungsinformationen im lokalen Speicher des Servers gespeichert werden, der die erste Transaktion gestartet hat. Diese Informationen werden auch für jede weitere Anforderung als Cookie auf dem lokalen Computer gespeichert. Wenn der Benutzer zusätzliche Anforderungen stellt, wird er automatisch an den Server weitergeleitet, der die Transaktion gestartet hat.
Die Serveraffinität schränkt eine Computeranwendung in einigen Punkten ein. Diese Technik wirkt sich normalerweise auf die Leistung, Flexibilität und Zuverlässigkeit aus. Wenn ein Programm diesen Ansatz verwendet, erzwingt es, dass Anforderungen an bestimmte Server im Cluster gesendet werden. Wenn diese Server überlastet oder nicht mehr verfügbar sind, wird dem Benutzer in der Regel eine Fehlermeldung angezeigt, dass die Internet-Website nicht verfügbar ist, obwohl andere Server verfügbar sind.
Wenn ein verteiltes Computersystem wirklich über einen Lastausgleich verfügt, wird jede Anforderung an einen anderen Server weitergeleitet. Dieser Ansatz für den Lastenausgleich wird verringert, wenn Serveraffinitätstechniken angewendet werden. Der Load Balancer ist gezwungen, Anforderungen an bestimmte Computer zu senden, was dazu führen kann, dass eine Box mit Anforderungen überlastet wird.
Es ist wichtig, andere Optionen in Betracht zu ziehen, bevor Sie Server-Affinitätslösungen implementieren. Dies schränkt normalerweise die Leistung und Skalierbarkeit einer internetbasierten Anwendung ein, was sich direkt auf die Verwendung der Anwendung auswirkt. Einige bessere Optionen umfassen sowohl lokale Speicher- als auch Datenbankspeichertechniken, die eine zustandslose Anforderung an die Anwendung ermöglichen.