향상된 애플리케이션 성능을 위한 JBoss 모니터링

단일 화면에서 전체 JBoss 인프라를 모니터링하고 JVM, 웹 및 EJB 컨테이너, 애플리케이션 코드, 데이터베이스 연결, 느린 쿼리, 외부 서비스 호출 등의 성능에 대한 가시성을 확보하세요.

무료 체험

선도적인 기업들의 신뢰

  • ebay
  • anthem
  • allscripts
  • dachers

JBoss를 모니터링해야 하는 이유

JBoss 애플리케이션 서버는 고트랜잭션 Java 애플리케이션 및 서비스를 구축, 배포 및 호스팅하는 데 널리 사용됩니다. 높은 애플리케이션 성능을 보장하려면 JBoss 애플리케이션 서버, 호스팅하는 구성 요소 및 지원하는 인프라 계층을 모니터링하는 것이 필수적입니다. IT 팀과 개발자는 Java 애플리케이션의 최종 사용자에게 영향을 미치기 전에 성능 문제를 선제적으로 감지하기 위해 이 기능이 필요합니다.

관리자가 직면하는 일반적인 과제:

  • Java 애플리케이션 트랜잭션이 느릴 때 JBoss 애플리케이션 서버의 문제가 원인인지 진단할 수 없음
  • 컨테이너 수준, JVM 수준 및 코드 수준 문제를 구분할 수 없음
  • 전체 Java 환경에 걸쳐 중앙 집중식 성능 인사이트를 얻을 수 없음
JBoss Monitoring Tools: eG Enterprise

풀 스택 JBoss 성능 모니터링

Jboss and WildFly

eG Enterprise는 전체 JBoss 인프라에 대한 단일 화면 뷰를 제공합니다. 직관적인 웹 콘솔에서 애플리케이션 소유자, 개발자 및 관리자는 JVM, 웹 및 EJB 컨테이너, 애플리케이션 코드, 데이터베이스 연결, 느린 쿼리, 외부 서비스 호출 등을 포함한 전체 Java 스택을 모니터링할 수 있습니다.

  • 즉시 사용 가능하게, eG Enterprise는 JBoss Enterprise Application Platform(EAP) 및 WildFly(이전 JBoss AS)를 위한 목적에 맞게 구축된 모니터링 모델을 제공합니다.
  • Java 트랜잭션, EJB, JSP, 서블릿, DataSource, 커넥터, JMS 메시지 큐, JPA 등의 구성 요소를 포함한 JBoss 성능의 모든 측면에 대한 심층 진단을 확보합니다

eG Enterprise JBoss 모니터링

eG Enterprise는 JBoss 애플리케이션의 성능을 향상시킬 수 있도록 도와줍니다:

  • 실제 사용자 경험을 모니터링하고 느려짐을 선제적으로 감지합니다
  • JVM 성능의 모든 측면을 추적하고 최적의 성능을 위해 JBoss JVM을 튜닝하는 방법을 찾습니다
  • JBoss 성능에 대한 심층 인사이트와 KPI를 확보하여 더 빠르게 문제를 해결합니다
  • 성능 문제의 근본 원인을 자동으로 정확히 파악하여 IT Ops, DevOps 및 개발자 간의 책임 전가를 없앱니다
데모 보기

eG Innovations는 최대 가동 시간과 사용자 만족도를 제공하기 위한 강력하고 신뢰할 수 있으며 매우 가치 있는 솔루션을 제공합니다. 선제적 알림은 시스템 및 애플리케이션 가용성에 영향을 미치기 전에 성능 문제를 즉시 해결할 수 있도록 도와줍니다.

Mike Montano선임 관리자, Allscripts

주요 기능

더 빠른 문제 해결 - JBoss 성능 심층 인사이트로

  • 각 커넥터의 수신 요청 수를 모니터링합니다
  • DataSource 연결 풀에서 사용 가능한 연결을 모니터링합니다
  • 각 서블릿의 실행에 걸리는 시간을 추적합니다
  • 각 EJB에 대한 호출, 실행, 생성, 제거 지표를 측정합니다
  • EJB 스레드 풀의 크기가 올바르게 설정되었는지 확인합니다
  • JBoss 성능으로 인해 영향받는 비즈니스 트랜잭션을 격리합니다
  • JVM의 메모리 부족 예외 및 메모리 누수를 포착합니다

서버 측 문제, 리소스 부족(CPU, 메모리, 디스크 등) 및 하드웨어 오류와의 자동 상관 분석이 인프라와 애플리케이션 문제를 구분합니다.


코드 수준 가시성 확보 - 애플리케이션 성능 최적화

eG Enterprise는 개발자가 Java 코드 수준의 문제를 쉽게 식별할 수 있도록 지원합니다.

  • 특정 느린 비즈니스 트랜잭션에 대해 애플리케이션 코드를 드릴다운하여 느림을 유발하는 정확한 함수를 식별합니다
  • 비효율적인 코드, 오류, 장기 실행 데이터베이스 쿼리 및 불충분한 Java 힙 메모리 설정을 즉시 격리합니다
  • 코드 최적화를 위해 JVM에서 CPU 집약적 스레드, 대기 스레드, 루트 블로커 스레드를 격리합니다

sharepoint-performance-metrics
심층 분석: eG Enterprise가 모니터링하는 JBoss 성능 지표 확인

핵심 질문에 답변 - JBoss 성능

  • 어떤 Java 비즈니스 트랜잭션이 느리거나 지연되어 있는가?
  • 각 JBoss 엔진이 처리하는 트랜잭션은 몇 개인가?
  • 팜의 모든 JBoss 서버에 워크로드가 균형 있게 분산되어 있는가? 부하를 처리하기 위해 더 많은 JBoss 서버가 필요한가?
  • 특정 JMS 큐 또는 토픽에 백로그가 축적되고 있는가?
  • Java 서블릿이 허용 가능한 처리 임계값 내에서 실행되고 있는가?
  • 트랜잭션이 DataSource 연결 풀에서 연결을 기다리고 있는가? 최적으로 크기가 설정되어 있는가?

모니터링을 넘어서 - JBoss 웹 컨테이너

eG Enterprise는 Java 기술 기반 웹 애플리케이션에 대한 완전한 성능 보장을 제공합니다:

  • 사용자 경험 모니터링: 실제 사용자 모니터링합성 트랜잭션 모니터링을 활용하여 사용자 경험 문제와 느린 트랜잭션을 식별합니다. 문제가 브라우저, 네트워크, 서버 중 어디에 있는지 파악하세요.
  • 비즈니스 트랜잭션 추적: Java 애플리케이션 아키텍처 전반에 걸쳐 느린 트랜잭션을 추적하고 트랜잭션 저하를 유발하는 서버 측 문제를 격리합니다.
  • 심층 JVM 모니터링: CPU, 힙 및 비힙 메모리, 스레드, 클래스, 가비지 컬렉션 등 JVM 성능의 모든 측면을 포괄적으로 모니터링합니다.

JBoss 모니터링에 관한
자주 묻는 질문(FAQ)

Red Hat JBoss Enterprise Application Platform(JBoss EAP)은 마이크로서비스에서 전통적인 Java 애플리케이션에 이르기까지 다양한 유형의 Java 애플리케이션을 관리하기 위한 강력한 플랫폼을 제공하는 오픈소스 Java 기반 애플리케이션 서버 플랫폼입니다.

JBoss’s modular architecture is specifically designed to deliver optimal performance for applications across private, public, or hybrid clouds. With its exceptionally low memory footprint and swift startup times, JBoss EAP is particularly well-suited for environments where efficient resource allocation is crucial, such as Red Hat OpenShift.

개발자는 Spring, Spring Web Flow, Angular, React, jQuery와 같은 기타 업계 선도 기술뿐만 아니라 Jakarta EE 웹 기반 프레임워크를 지원받습니다. 또한 Java 서블릿, JavaServer Pages(JSP), Enterprise JavaBeans(EJB)와 같은 전통적인 엔터프라이즈 Java 기술도 지원하여 다양한 환경에서 Java 애플리케이션의 원활한 배포를 보장합니다.

JBoss EAP는 고성능 엔터프라이즈 Java 애플리케이션을 제공하기 위한 훌륭한 플랫폼으로 만드는 다음과 같은 기능과 장점을 가지고 있습니다:

  • Jakarta EE 호환: JBoss EAP는 Web Profile 및 Full Platform 사양을 모두 지원하여 Jakarta EE와 완전히 호환됩니다.
  • 관리형 도메인: JBoss EAP는 관리형 도메인의 개념을 통해 여러 서버 인스턴스 및 물리적 호스트의 중앙 집중식 관리를 허용합니다. 이는 여러 서버에 걸쳐 구성, 배포, 보안 및 시스템 속성을 처리하는 더 효율적인 방법을 제공합니다.
  • 관리 콘솔 및 관리 CLI: JBoss EAP는 웹 기반 관리 콘솔 및 명령줄 인터페이스(CLI)를 포함한 사용자 친화적인 관리 인터페이스를 제공합니다. CLI는 스크립팅 및 관리 작업 자동화를 지원하며, 관리 콘솔은 구성 및 모니터링을 위한 직관적인 그래픽 인터페이스를 제공합니다.
  • 단순화된 디렉토리 레이아웃: JBoss EAP는 단순화된 디렉토리 구조를 도입합니다. modules 디렉토리에는 애플리케이션 서버 모듈이 포함되고, domain 및 standalone 디렉토리에는 각각 도메인 및 독립 실행형 배포를 위한 아티팩트와 구성 파일이 포함됩니다.
  • 모듈식 클래스 로딩 메커니즘: JBoss EAP는 모듈을 필요에 따라 로드 및 언로드하는 모듈식 클래스 로딩 메커니즘을 활용합니다. 이는 보안과 성능을 향상시키고 시작 및 재시작 시간을 줄입니다.
  • 간소화된 데이터소스 관리: 관리 콘솔 및 관리 CLI를 사용하여 데이터소스를 쉽게 생성하고 관리할 수 있습니다.
  • 통합 보안 프레임워크: JBoss EAP는 접근 제어 관리를 위한 통합 보안 프레임워크인 Elytron을 통합합니다. Elytron은 독립 실행형 서버 및 관리형 도메인과 JBoss EAP 서버에 배포된 애플리케이션의 보안을 구성하기 위한 단일 프레임워크를 제공합니다.

JBoss 아키텍처의 주요 구성 요소는 다음과 같습니다:

  • 웹 서버: Red Hat JBoss 웹 서버는 널리 배포된 Apache 웹 서버와 최고의 서블릿 엔진인 Apache Tomcat을 결합한 강력한 솔루션입니다. 이 조합은 두 기술의 강점을 결합하여 포괄적인 웹 애플리케이션 환경을 제공합니다.
  • 서블릿 컨테이너: JBoss EAP는 Java 서블릿 및 JavaServer Pages(JSP)를 호스팅하고 관리하는 서블릿 컨테이너를 통합합니다. 서블릿 실행 및 웹 요청 처리를 위한 필요한 런타임 환경을 제공합니다.
  • EJB 컨테이너: JBoss EAP는 EJB 구성 요소의 배포 및 실행을 지원하는 Enterprise JavaBeans(EJB) 컨테이너를 포함합니다. EJB 컨테이너는 EJB의 수명 주기, 동시성 및 트랜잭션을 관리합니다.
  • 영속성 계층: JBoss EAP는 Hibernate 및 Java Persistence API(JPA)와 같은 다양한 영속성 프레임워크와의 통합을 지원합니다. 이를 통해 개발자는 데이터베이스와 상호 작용하고 객체-관계형 매핑(ORM)을 수행할 수 있습니다.
  • 관리 인프라: JBoss EAP는 애플리케이션 서버의 중앙 집중식 관리 및 모니터링을 허용하는 강력한 관리 인프라를 갖추고 있습니다. 관리 콘솔, CLI(명령줄 인터페이스) 및 프로그래밍 방식 관리를 위한 API가 포함됩니다.
  • 클러스터링 및 고가용성: JBoss EAP는 여러 애플리케이션 서버 인스턴스가 함께 작동하여 확장성, 내결함성 및 부하 분산을 제공하는 클러스터링 및 고가용성 기능을 지원합니다.
  • 메시징: JBoss EAP는 분산 구성 요소 간의 비동기 통신을 위한 Java Message Service(JMS)를 지원하는 메시징 서브시스템을 포함합니다. 애플리케이션 서버 내에서 신뢰할 수 있고 확장 가능한 메시징 기능을 가능하게 합니다.
  • 보안 프레임워크: JBoss EAP는 인증, 권한 부여, ID 관리 및 자격 증명 저장을 포함한 보안 구성 및 관리를 단순화하는 Elytron 서브시스템을 포함한 포괄적인 보안 프레임워크를 통합합니다.

JBoss EAP(Enterprise Application Platform)와 WildFly는 JBoss 애플리케이션 서버의 두 가지 변형으로, 각각 뚜렷한 특성과 대상 고객을 가지고 있습니다.

JBoss EAP:

  • JBoss EAP는 Red Hat이 개발하고 지원하는 JBoss 애플리케이션 서버의 상용 제품입니다.
  • 엔터프라이즈 수준의 지원, 연장된 제품 수명 주기 및 프로덕션 환경을 위해 특별히 설계된 추가 기능을 제공합니다.
  • JBoss EAP는 안정성, 지원 및 장기 유지 관리에 대한 엄격한 요구 사항을 가진 조직을 위해 강력하고 안정적인 Java EE(Enterprise Edition) 애플리케이션 서버를 제공하는 데 중점을 둡니다.
  • JBoss EAP는 역사적으로 기반 웹 서버 엔진으로 Apache Tomcat을 사용했지만, 최근 버전은 성능과 확장성 향상을 위해 Undertow로 전환했습니다.
  • JBoss EAP는 상업적으로 지원되는 고도로 안정적인 Java EE 애플리케이션 서버를 필요로 하는 대기업 및 조직의 요구를 충족하도록 설계되었습니다.

WildFly:

  • WildFly는 JBoss 애플리케이션 서버의 커뮤니티 주도 오픈소스 버전입니다.
  • JBoss EAP와 유사한 기능을 제공하지만 다른 릴리스 주기 및 지원 모델을 가집니다.
  • WildFly는 최첨단 기능과 역량을 제공하는 데 중점을 두는 유연하고 혁신적인 Java 애플리케이션 서버로 설계되었습니다.
  • 개발자가 실험, 기여 및 혁신할 수 있는 플랫폼을 제공하여 활기찬 커뮤니티 주도 에코시스템을 촉진합니다.
  • JBoss EAP와 유사하게 WildFly도 성능과 확장성 향상을 위해 기본 웹 서버 엔진으로 Undertow를 사용하도록 전환했습니다.
  • 오픈소스 및 커뮤니티 주도 Java 애플리케이션 서버를 원하는 개발자, 중소기업 및 조직에 적합합니다.

결정은 지원 필요성, 엔터프라이즈 요구 사항, 상업적 지원 대 커뮤니티 주도 개발에 대한 선호도 등 다양한 요소를 고려해야 합니다. 엔터프라이즈 수준의 요구 사항을 찾고 있다면 JBoss EAP가 좋은 선택입니다. 반면에 커뮤니티 주도의 오픈소스 혁신과 유연성을 중시한다면 WildFly가 좋은 선택입니다.

JBoss EAP는 엔터프라이즈 요구에 고유하게 만드는 추가 기능과 역량과 함께 Tomcat의 지원되는 엔터프라이즈 준비 버전을 제공합니다.

JBoss는 인증된 Java EE 준수 애플리케이션 서버로 다양한 엔터프라이즈 Java API에 대한 광범위한 지원을 제공합니다. 서블릿 및 Java Server Page(JSP) 사양뿐만 아니라 JAX-RS 웹 서비스, CDI(Contexts and Dependency Injection), Java Message Service, JavaMail 및 Java Naming and Directory Interface와 같은 다른 엔터프라이즈 API도 지원합니다. CDI, Java Transaction API, JavaServer Faces(JSF), Hibernate 및 JPA와 같은 엔터프라이즈 개발 API도 지원합니다.

반면에 Tomcat은 주로 서블릿 엔진입니다. 서블릿 및 JSP 사양의 구현을 제공하는 데 중점을 둡니다. WebSocket, Java Authentication Service Provider Interface for Containers 및 표현 언어 API와 같은 몇 가지 보완 API도 지원합니다. 그러나 즉시 사용 가능한 상태에서 Tomcat은 CDI, JSF, Hibernate 및 JPA와 같은 많은 엔터프라이즈 개발 API에 대한 기본 지원이 없습니다.

다양한 Java API 및 엔터프라이즈 개발 기능에 대한 포괄적인 즉시 지원이 필요하다면 JBoss가 더 나은 선택입니다. 그러나 Tomcat의 경량 특성을 선호하지만 추가 API가 필요한 경우 TomEE와 같은 제품을 사용하거나 필요한 기능을 추가하기 위해 외부 프로젝트(예: Spring 프레임워크)를 통합하는 것을 고려할 수 있습니다.

SRE 또는 JBoss 관리자로서 JBoss 성능 튜닝에 전체적인 접근 방식을 취해야 합니다. 성능 튜닝은 운영 체제, JVM, JBoss 컨테이너 및 애플리케이션 코드를 포함한 여러 계층을 포함해야 합니다. JBoss 애플리케이션 서버 튜닝에만 집중하는 것은 기반 JVM 및 운영 체제에 의존하므로 충분하지 않습니다. 이러한 계층을 무시하면 성능이 저하되고 JBoss가 느리다는 불만이 생길 수 있습니다.

높은 성능을 보장하기 위해 성능 튜닝 프로세스에서 각 계층을 고려하는 것이 중요합니다. 운영 체제부터 시작하여 구성을 최적화하는 것이 성능 극대화에 중요한 역할을 합니다. 마찬가지로 JBoss가 그 위에서 실행되므로 JVM 튜닝이 중요합니다. 잘 구성된 JVM은 전체적인 성능을 크게 향상시킬 수 있습니다. 또한 JBoss 컨테이너를 구성하는 것은 동작 및 리소스 할당을 세밀하게 조정하는 데 필수적입니다.

그러나 성능 문제는 애플리케이션 코드 자체의 병목 현상에서도 발생할 수 있습니다. 이러한 병목 현상을 식별하고 해결하는 것은 JBoss 성능 튜닝의 중요한 측면입니다. 코드를 분석하고 실행을 최적화함으로써 잠재적인 성능 제약을 제거할 수 있습니다.

Red Hat JBoss 모니터링은 다음을 포함한 다양한 수준에서 수행되어야 합니다:

  • JVM 모니터링: JBoss를 호스팅하는 JVM(Java Virtual Machine)의 리소스 사용률, 메모리 사용량, 가비지 컬렉션 활동 및 전반적인 상태를 모니터링합니다.
  • 애플리케이션 서버 모니터링: 스레드 사용률, 연결 풀 사용량 및 기타 서버 수준 지표를 포함한 JBoss 애플리케이션 서버의 성능을 모니터링합니다.
  • 로그 파일 모니터링: JBoss 로그 파일을 추적하여 오류, 경고, 요청 및 기타 이벤트를 모니터링합니다.
  • 코드 수준 프로파일링: 바이트코드 계측을 사용하여 코드 수준 프로파일링을 수행하고 개별 Java 메서드의 성능을 측정합니다.
  • 애플리케이션 트랜잭션 모니터링: 바이트코드 계측을 사용하여 JBoss 인스턴스에서 애플리케이션 트랜잭션을 추적하여 응답 시간, 데이터베이스 쿼리 및 외부 API 호출을 측정합니다.

이러한 수준에서 모니터링함으로써 JBoss 애플리케이션의 성능 문제를 신속하게 진단하고 해결할 수 있습니다.


무료 체험판을 시작하거나 엔지니어와 맞춤형 데모 일정을 잡으세요

  • 클라우드 환경, 하이브리드 클라우드 설정 및 온프레미스 배포에서 작동
  • SaaS 플랫폼 또는 온프레미스를 사용하여 eG Enterprise 배포
  • 클라우드 애플리케이션, 디지털 워크스페이스 및 IT 인프라 모니터링에 적합
Please Enter Valid Work Email
eG Enterprise