JMX는 Java Management Extensions의 약자로, Java Management Extensions를 의미하며, Java 프로그램을 관리하고 모니터링하는 데 사용됩니다. 가장 일반적으로 사용되는 것은 JVM 메모리, CPU 사용량, 스레드 수, 가비지 컬렉션 등과 같은 JVM의 모니터링 및 관리입니다. 또한 로그 레벨의 동적 수정으로도 사용할 수 있는데, 예를 들어 log4j는 JMX를 지원하여 온라인 서비스의 로그 레벨을 동적으로 수정합니다. 가장 중요한 도구들은 Spring Boot Actuator, JConsole, VisualVM 등과 같은 다양한 모니터링 도구에도 사용됩니다.
JMX는 단순한 표준, 명세가 아니라 Java 관리 시스템의 인터페이스이자 프레임워크이기도 합니다. 개발자들이 자신만의 확장 기능을 맞춤화하고 개발할 수 있는 표준과 명세가 있으며, JDK는 프레임워크로서 특히 JVM의 모니터링 및 관리를 포함한 공통 기능을 구현하는 데 도움을 주었습니다.
jconsole로 연결하세요
jconsole은 JDK에 내장된 도구이며, JDK 환경을 설정한 후에는 명령어 라인에 입력만 하면 됩니다jconsole깡통. 아래에 나와 있습니다:
RMI를 이용해 연결
RMI는 일반적으로 원격 서비스에 연결하는 데 사용되지만, 물론 로컬 프로세스도 사용할 수 있습니다. 이것은 원격 서비스 고객을 연결하는 첫 단계이기도 합니다. MBean을 등록할 때, 등록이 완료된 후에는 RMI 연결을 열고, 8999 포트를 RMI 액세스 포트로 열고, 클라이언트가 고정된 연결 문자열로 연결할 수 있는 큰 코드 조각이 있다는 것을 눈치채셨나요?
연결 문자열의 형식service:jmx:rmi:///jndi/rmi://host:port/jmxrmi
예를 들어 카프카를 보자:
service:jmx:rmi:///jndi/rmi://192.168.1.182:9988/jmxrmi
|