우리는 Java 웹 응용 프로그램을 보유하고 있으며 앞으로이 모니터링을 확장하기 위해 몇 가지 기본 모니터링을 설정하려고합니다. .Java 웹 응용 프로그램 모니터링 - JMX가 올바른 선택입니까?
(1) 응용 프로그램에서 실행되는 웹 컨테이너의 가상 시스템에 대한 일반적인 정보 (예 : 메모리와 스레드)를 수집
(2)의 "상태"모니터 : 다음과 같이 우리의 계획은 신청. 이것은 다소 모호하지만 적어도 웹 애플리케이션이 여전히 살아 있고 요청에 응답 할 수 있는지보고 싶습니다.
(3) 향후 우리는 우리의 응용 프로그램과 관련된 자세한 정보를 수집하고자합니다. 다시 말하지만 다소 모호 합니다만 애플리케이션에서 내부적으로 수집 한 특정 통계를 지원 담당자가 사용할 수 있도록 할 수도 있습니다.
일반적으로 웹 응용 프로그램은 Tomcat 5.5 또는 6 환경에 배포됩니다. 웹에서 빠르게 검색하면 JMX를 Tomcat에 사용할 수 있으며 JConsole을 사용하여 서버에 연결할 수 있음을 알 수 있습니다. 이것은 우리에게 포인트 (1)을 푸는 많은 기본 정보를 제공합니다. 또한, 일부 정보는 "Catalina"에 대한 MBeans 섹션에서 사용할 수 있으며 적어도 특정 서블릿이 얼마나 많은 요청을 받았는지 확인할 수 있습니다. 이것은 우리가 point (2)에 대해 원하는 것은 아니지만 최소한 우리에게 정보를 제공합니다. 꽤 많은 정보가있는 것처럼 보이지만 JConsole을 사용하여 해석하는 것이 다소 어렵습니다. 아마도 Tomcat이 공개 한 MBean을 해석 할 수있는 더 나은 도구가있을 것입니다.
포인트 (3)의 경우, 처음에는 우리 자신의 MBeans를 작성한 다음 JConsole과 같은 것으로 사용할 수있는 것으로 보입니다. 개인적으로 이것은 JMX에 대해 배우는 과정이 포함되어 있는데, JMX를 사용하면 매우 기쁩니다.하지만 걱정이됩니다. 주변을 둘러 보았을 때 주제에 관한 대부분의 교과서는 수년간 업데이트되지 않았으며 오픈 소스 도구는 최근 업데이트 없이는 어려움을 겪고있는 것으로 보입니다. 그래서 제 질문은 간단한 질문입니다. JMX에 대한 귀하의 의견은 무엇입니까? 미래가 있습니까? 아니면 다른 것으로 대체 되었습니까? 우리는 이미 웹 애플리케이션을 가지고 있지만 관리 콘솔을 처음부터 시작하고 있습니다. JMX를 선택해야합니까? 아니면 앞으로 더 나은 미래를 위해 더 적절한 것이 있습니까?
나는 개인적인 도끼를 갈기 갈기가없는이 질문을하며, 나는 당신의 의견과 경험을 듣기를 바랍니다. 나는 아무도 정답이 없다고 확신하지만 정보에 입각 한 토론이 유용하다고 생각합니다.
미리 감사드립니다.
Adam.
감사를 알고 jvisualvm하는 플러그인입니다. JMX의 미래에 대한 당신의 긍정적 인 견해를 듣는 것이 좋다! – Adam
@Brian Jprofiler는 내부적으로 JMX를 사용합니까? – Geek