Wie funktioniert die Erkennung von terminierten Knoten in Erlang?Wie beeinflusst Net_ticktime die Kontrolle der Node-Lektivität in Erlang?

StackOverflow https://stackoverflow.com//questions/24061270

Frage

Ich setze net_ticktime-Wert auf 600 Sekunden.

generasacodicetagpre.

In Erlang-Dokumentation für net_ticktime= Ticktime:

Gibt die Tickzeit von net_kernel an. Tickime ist in Sekundenschnelle angegeben. Nach jedem Zecken / 4 Sekunden werden alle angeschlossenen Knoten angekreuzt (falls etwas anderes in einen Knoten geschrieben wurde) und wenn von einem anderen Knoten innerhalb der letzten vier (4) Tickzeiten nichts von einem anderen Knoten empfangen wurde, in dem der Knoten als unten angesehen wird. Dies stellt sicher, dass Knoten, die nicht reagieren, aus Gründen wie Hardwarefehlern, in Betracht gezogen werden, in Betracht gezogen werden.

die Zeit t, in der ein Knoten, der nicht antwortet, erkannt wird:

generasacodicetagpre.

Ticktime ist standardmäßig 60 (Sekunden). Somit 45

Hinweis: Normalerweise wird ein Abschlussknoten sofort erkannt.

mein problem: Meine Ticktime ist 600 (Sekunden). Somit 450 (7,5 Minuten)

Es wird jedoch darauf hingewiesen, dass normalerweise ein Abschlussknoten sofort erkannt wird, aber ich konnte keine Erklärung finden (weder in Erlang-Dokumentation oder Erlang-eBook oder andere Erlang-basierte Quellen) dieses sofortigen Antwort-Prinzips für den Knoten-Termination in verteilten Erlang. Sind Knoten in verteilter Umgebung periodisch mit kleineren Intervallen als net_ticktime, oder schickt der Terminierungsknoten eine Art Meldung an andere Knoten, bevor er endet? Wenn es eine Nachricht sendet, gibt es irgendwelche Szenarien, in denen der Kündigungsknoten diese Nachricht nicht senden kann, und muss angeladen werden, um seine Lebendigkeit zu untersuchen?

Es wird auch in der Erlang-Dokumentation angezeigt, dass verteilte Erlang nicht sehr skalierbar ist, dass Cluster größer als 100 Knoten, da jeder Knoten Links zu allen Knoten im Cluster hält. Ist der Algorithmus zur Untersuchung der Lebendigkeit von Knoten (Pinging, Ankündigung von Kündigungen) mit zunehmender Größe des Clusters modifiziert?

War es hilfreich?

Lösung

Wenn zwei Erlang-Knoten anschließen, wird zwischen ihnen eine TCP-Verbindung hergestellt.Der Fehler, den Sie induzieren, würde dazu führen, dass das zugrunde liegende Betriebssystem die Verbindung schließt, um den anderen Knoten effektiv sehr schnell zu benachrichtigen.

Das Netzwerk-Tick wird verwendet, um eine Verbindung zu einem entfernten Knoten zu erkennen, der aufwärts erscheint, aber tatsächlich den Verkehr läuft, z. B. wenn ein Netzwerkereignis einen Knoten isoliert.

Wenn Sie einen Fehler simulieren möchten, der ein Ankreuzen erfordert, um zu erkennen, blockieren Sie eine Firewall, um den Datenverkehr auf der Verbindung zu blockieren, wenn die Knoten erster Ping erstellt wird.

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