Optimieren der Nachrichtenhäufigkeit basierend auf der Clusterlast

Ich schreibe eine einfache homogene Cluster-Anwendung mit Akka 2.2.3 und Scala. Ein Partikelfilteralgorithmus, bei dem jeder Knoten zu zufälligen Zeitpunkten Daten mit anderen Clustermitgliedern teilt. Derzeit handelt es sich um eine Forschungsanwendung und nicht um ein geschäftskritisches System.

Gegenwärtig sendet jeder Knoten jede Sekunde eine Nachricht mit fester Größe an einen zufällig ausgewählten Knoten. Dies funktioniert, aber ich habe Bedenken hinsichtlich der Leistung beim Skalieren (z. B. Cloud im Vergleich zu lokal).

Knoten können beim Senden von Daten überlastet werdenKnoten können mit eingehenden Nachrichten von anderen Clustermitgliedern überlastet werdenDas Netzwerk kann zum Engpass werden

Ich möchte die Anwendung mit großen Clustern in verschiedenen Netzwerken ausführen und eine gute Leistung erzielen, ohne manuelles Tunen / Überwachen.Mit welchen einfachen Ansätzen kann ich die Nachrichtengröße und -häufigkeit optimieren, um die oben genannten Bedenken auszuräumen?