Pergunta

Estou avaliando soluções para gerenciar mais de 400 instâncias de um aplicativo semelhante ao quiosque. Cada instância executa um aplicativo Java personalizado que exibe informações e interage com os usuários. Estamos pensando se devemos desenvolver uma solução personalizada, tente incluir o suporte JMX para ela ou encontrar outra coisa.

Os requisitos são simples:

  1. Deve ser uma solução gratuita e de código aberto;
  2. Ele deve ser capaz de gerenciar mais de 400 instâncias (por exemplo: um gerente que gerencia 400 clientes habilitados para JMX);
  3. Deve ser preferencialmente programado em Java;
  4. Precisamos de métricas padrão (por exemplo: recursos disponíveis, tempos de execução, status atual, etc);
  5. Opcionalmente, gostaríamos de enviar algumas mensagens de controle para as instâncias.

Parece que os recursos e flexibilidade do JMX são o que estávamos procurando. No entanto, não encontrei muito sobre a escalabilidade do JMX. Quantos "clientes" um JMX Manager pode lidar? É possível gerenciar 400 instâncias jmx simultaneamente? Existe alguma arquitetura ou solução alternativa recomendada se não lidar com tantos clientes diretamente?

Obrigado por qualquer dica

Foi útil?

Solução

JMX é exatamente o que você deseja.

Quanto a quantos clientes você pode se conectar, eu imagino que, para as partes de monitoramento, você só precisaria buscar dados dos clientes remotos a cada poucos segundos, no máximo, certo?

Não tenho certeza se já existe uma solução que permitirá que você monitore n clientes e também os controle, então você provavelmente gostaria de desenvolver algo sozinho - interagir com MBeans remotos com o código JMX parece ser trivial, o que então transforma isso em um exercício de poder escrever um programa que possa se comunicar simultaneamente com 400 nós com sucesso.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top