2016-09-13 5 views
1

Ich schreibe ein spezialisiertes verteiltes Speichersystem mit akka Clustering und möchte große Payloads (> 1MB Byte Arrays) zwischen den Akteuren senden. Ich fand, dass ich akka.remote.netty.tcp.maximum-frame-size bearbeiten musste, um dies zu ermöglichen.Akka Clustering und große Payloads

Meine Frage ist: Gibt es andere Auswirkungen auf die Leistung, die ich berücksichtigen muss? Muss ich zum Beispiel die Netto-Puffergrößen weiter abstimmen? Gibt es eine Möglichkeit, die Anzahl der erstellten Kopien zu minimieren?

Antwort

0

Eine Sache zu denken ist, dass große Pakete so etwas wie Blockierung der Leitung verursachen können, wo die Systemnachrichten wie Herzschläge blockiert werden, indem Sie das große Paket senden. Im Allgemeinen ist es eine gute Idee, große Internode-Nachrichten in kleinere Nachrichten aufzuteilen, um dies zu vermeiden.

Wir arbeiten gerade an einem neuen Remoting-Subsystem für Akka, das einen separaten großen Nachrichtenkanal zwischen Knoten enthält und wo wir auch eine Trennung von regulären Nachrichten und Systemnachrichten haben, um zu vermeiden, dass sich diese gegenseitig stören.