JMX significa Java Management Extensions, que significa Java Management Extensions, que são usadas para gerenciar e monitorar programas em Java. O mais comumente usado é o monitoramento e gerenciamento da JVM, como memória da JVM, uso da CPU, contagem de threads, coleta de lixo, etc. Além disso, também pode ser usado como uma modificação dinâmica do nível log, por exemplo, log4j suporta JMX para modificar dinamicamente o nível log dos serviços online. Os mais importantes também são usados em várias ferramentas de monitoramento, como Spring Boot Actuator, JConsole, VisualVM, etc., mencionados no início do artigo.
JMX não é apenas um padrão, uma especificação, mas também uma interface e uma estrutura para o sistema de gerenciamento Java. Existem padrões e especificações para que desenvolvedores personalizem e desenvolvam suas próprias extensões, e como framework, o JDK nos ajudou a implementar funções comuns, especialmente o monitoramento e gestão da JVM.
Conecte-se usando jconsole
O jconsole é uma ferramenta embutida para JDK, e após configurar o ambiente JDK, só precisamos inseri-lo na linha de comando do cmdjconsolePoder. Como mostrado abaixo:
Conecte-se usando RMI
O RMI geralmente é usado para conectar a serviços remotos, mas, claro, processos locais também podem ser usados. Esse também é o primeiro passo para conectar clientes de serviço remotos. Quando registramos o MBean, você percebeu que, após o registro ser concluído, há um grande pedaço de código, que é usado para abrir a conexão RMI, abrir a porta 8999 como porta de acesso RMI, e então o cliente pode se conectar com uma string de conexão fixa.
O formato da string de conexãoservice:jmx:rmi:///jndi/rmi://host:port/jmxrmi
Pegue Kafka como exemplo, conforme segue:
service:jmx:rmi:///jndi/rmi://192.168.1.182:9988/jmxrmi
|