Frage

Ich baue eine Client-Server-Anwendung, und ich bin auf der Suche Failover an den Client auf dem Hinzufügen, so dass, wenn ein Server ausfällt wird es versuchen, auf einem anderen verfügbaren Server zu verbinden. Gibt es irgendwelche Normen oder Spezifikationen für Server-Failover? Ich würde eher einen vorhandenen Standard annehmen als meine eigenen Mechanismus zu implementieren.

War es hilfreich?

Lösung

ich nicht da ist, oder jeder sein muss. Es ist ziemlich einfach und hängt alles davon ab, wie Sie mit Ihrem Sever verbinden können, aber im Grunde müssen Sie Pings / Keep Alive / Herzschläge halten Senden, was Sie wollen em nennen, und wenn ein Nicht-Bestanden auftritt (oder n nicht in einer Reihe, wenn Sie will) einen Schalter in der Config ändern.

Normalerweise würde die oben als separater Dienst auf dem Client-Rechner ausgeführt werden. Altenativly, könnten Sie eine Methode Ausführung Handler erstellen, die thr Ausführung aller Server verarbeitet Anrufe, die Sie machen, und bei einem Fehler Kommunikation, in Ihrem ‚fängt‘ Block, bewegen Sie Ihren Schalter in Config

Andere Tipps

Du bist Frage ist sehr allgemein. hier sind einige allgemeine Antworten: Google für Fault tolerant Computing

Google für Hochverfügbarkeitslösungen

Dies ist in der Regel entweder auf dem Load-Balancer oder Serverebene behandelt. Das ist nicht etwas, das man normalerweise auf dem Client in Code tun.

Normalerweise Multihoming Sie die Server jeweils eine eigene IP + ein, die zwischen ihnen allen gemeinsam genutzt wird. Außerdem kommunizieren sie miteinander für den Herzschlag über tcp zu wissen, welche der aktive Knoten in einem Aktiv / Passiv-Cluster ist.

Ich kann nicht sagen, welche Art von Server, die Sie haben, aber die meisten der Windows-Server kann dies nativ tun.

Sie betrachten könnten die Frage an serverfault fragen, um zu sehen, wie man richtig Ihre Server zu konfigurieren, dies zu unterstützen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top