Ajustando a frequência de mensagens com base no carregamento do cluster
Eu estou escrevendo um aplicativo de cluster homogêneo simples usando Akka 2.2.3 e Scala; um algoritmo de filtragem de partículas no qual cada nó compartilha dados com outros membros do cluster em pontos aleatórios no tempo. Atualmente, é um aplicativo de pesquisa, não um sistema crítico para os negócios.
Atualmente, cada nó envia uma mensagem de tamanho fixo para um nó selecionado aleatoriamente a cada segundo. Isso funciona, mas tenho preocupações com relação ao desempenho durante o dimensionamento (por exemplo, nuvem versus local)
Nós podem ficar sobrecarregados enviando dadosOs nós podem ficar sobrecarregados com mensagens recebidas de outros membros do clusterA rede pode se tornar o gargaloGostaria de executar o aplicativo com clusters dimensionados em redes diferentes e obter um bom desempenho sem ajuste / monitoramento manual.Que abordagens simples eu poderia adotar para ajustar o tamanho e a frequência das mensagens para atenuar as preocupações acima?