530 likes | 761 Views
E4NET APM Solution – Jennifer 2.0. 2005. 06. 주식회사 이포넷. APM Solution 소개. Agenda. 시장 개요 2. 대상 고객 3. 주요 메시지 4. 제품 소개 5. 소비자가격 및 라이센스. 6. FAQS 7. 경쟁 제품 8. 마케팅 계획 9. 요약. 시장 개요. 고려하는 시장은 Java 기반 시스템을 위한 소프트웨어 성능 툴 시장으로서 급성장하고 있는 시장입니다 .
E N D
E4NET APM Solution – Jennifer 2.0 2005. 06. 주식회사 이포넷
Agenda 시장 개요 2. 대상 고객 3. 주요 메시지 4. 제품 소개 5. 소비자가격 및 라이센스 6. FAQS 7. 경쟁 제품 8. 마케팅 계획 9. 요약
시장 개요 고려하는 시장은 Java 기반 시스템을 위한 소프트웨어 성능 툴 시장으로서 급성장하고 있는 시장입니다. IDC에 따르면, 많은 애플리케이션들이 현재 J2EE 플랫폼 기반에서 개발되고 있으며 성능과 가용성에 대한 관리가 요구된다고 합니다. 또한 Hurwitz는 예산을 고려해야 하는 IT 애플리케이션 매니저들은 웹 기반 애플리케이션의 성능과 가용성에 대한 요구를 더 적은 비용으로 더 많이 만족시킬 수 있는데 중점을 두며 성능 문제나 이용 시에 발생하는 문제들을 찾고 수정하기 위해서는 시각적인 애플리케이션 관리 툴이 필요하다고 합니다. 시장의 요구사항 • 긴박한 국내 상황에서의 만족 • 성능 이슈와 장애에 대한 J2EE 관점에서의 원하는 결과 제공 • 컨설팅 수준의 지원력
2. 대상 고객 제니퍼는 J2EE 애플리케이션을 배포하려 하거나 현재 운영되고 있는 시스템에 대해서 위험성과 불확실성을 감소시키는 데 직접적인 역할을 합니다. 운영 시스템의 성능 모니터링을 수행함으로써 그동안 제시되지 못하였던 정확하고 객관적인 성능 데이터를 시각적으로 제시함으로서 운영팀에 파워를 더해 준다는 것이고, 그들의 수고를 줄여 준다는 면이 크다고 할 수 있습니다. IT 운영자 어느 정도의 규모를 갖춘 조직에서는 QA또는 테스트 팀과 같은 전문적인 팀을 운영하고 있습니다. EJB와 JSP, 서블릿 등의 J2EE 시스템을 이용하는 이러한 소프트웨어 전문가들은 주요한 고객이 되며 제니퍼와 같은 Java 성능 툴을 필요로 합니다. QA 및 테스트 팀
3. 주요 메시지 분산 J2EE 기반의 시스템 성능관리는... • 시스템의 성능에 대한 이슈는 시스템의 안정성과 가용성 측면에서 가장 큰 비중을 차지하므로 가장 중요한 기준임 • 테스트와 운영 단계에서의 직접적이고 지속적인 피드백이 필요하며이러한 피드백을 근간으로 하여 시스템 안정성과 가용성에 대한 종합적인 접근이 가능해야 함. • 복잡한 시스템 구조 속에서도 정확한 원인 진단이 가능해야 함. • 관련 팀간의 협업이 가능하도록 직관적인 데이터 표현이 가능해야 함. • 반드시 성능 및 장애 발생에 대하여 객관적인 검증이 이루어진 이후, 시스템 운영이 되어야 하며 이러한 객관적 검증을 위한 솔루션이 필요함.
3. 주요 메시지 제니퍼는... • 우수한 J2EE 시스템 모니터링 솔루션으로서 포지셔닝 • 분산 시스템 및 자바 환경의 출범 이후부터 현재까지의 경험에서 만들어진 노하우를 제품화 한 것으로서, Java 환경에 대한 전문성과 성능 관리 전략에 대하여 타 제품 기능들과는 비교할 수 없음 • 전체 J2EE 시스템의 성능 관련 데이터를 시각적인 그래픽으로 보여줌으로써 운영자가 시스템에 대한 직관적인 판단을 할 수 있도록 함 • 정확하고 객관적인 데이터를 통한 시스템 분석으로 성능 향상과 장애에 대한 신속한 조치를 가능케 함 • PLC(Peak Load Control : 초과 부하량 제어) 기능을 제공하여 시스템 운영 중에 발생할 수 있는 장애를 원천적으로 방지할 수 있으며 보다 안정적인 대고객 서비스가 가능하여 비즈니스적인 손실을 최소화 할 수 있다는 점에서 경쟁 제품들과 뚜렷한 차이점이 있음
3. 주요 메시지 IT 관리자 / 운영자를 위한 메시지
3. 주요 메시지 QA / Test 팀을 위한 메시지
4. 제품 소개 시스템의 성능 문제를 다루는 전통적인 접근 방식은 부가적인 혹은 더 강력한 하드웨어를 구입함으로써 잠재적인 성능 문제를 숨기는 것이었습니다. 하지만 이러한 방식은 비용적인 측면에서 효율적인 해결 방법이 아닙니다. 오히려 운영 비용과 관리 비용을 지속적으로 증가시킴으로써 더욱 심각한 문제를 유발시킬 수 있습니다. 제니퍼는 J2EE 기반의 분산 애플리케이션에서 발생되는 성능적 이슈와 장애의 원인을 탐지하고 진단하는 데 도움을 줍니다. 제니퍼에서 제공되는 기능과 애플리케이션에 대한 정보는 시스템의 성능, 확장성, 신뢰성을 높일 수 있는 근거가 됩니다
4. 제품 소개 제니퍼는 실시간 시스템 모니터링을 위한 솔루션으로서 다년간 국내 100여 곳 이상의 웹 시스템 장애 진단 경험을 토대로 핵심적으로 필요한 기능이 무엇인지를 도출하고 그 동안 연구한 성능 이론(Performance Theory)을 바탕으로 구현된 제품으로서 간편하면서도, 필요로 하는 핵심적인 데이터를 효과적으로 보여주며 가벼운 환경을 제공합니다. 제니퍼는 실시간 시스템 모니터링과 장애 감시 그리고 예기치 못한 서비스 요청 폭주에 의한 장애를 방지하기 위한 부하량 제어 기능을 제공하며 통계 데이터를 통한 향후 시스템 확장에 필요한 용량 산정을 가능케 합니다. 주요 특징 • 실시간 모니터링 • 장애 감시 • 서비스 폭주시 부하량 제어 • 시스템 확장시 필요한 용량 산정
4. 제품 소개 실시간 모니터링 • 시스템을 사용하는 사용자, 사용되고 있는 서비스의 정보와 함께 수행되는 리거시(Legacy: TMAX, CICS, TUXEDO 등의 TPM을 포함한 Back-End 시스템) 시스템과 DBMS 수행 정보도 함께 일목요연하게 제공하여 성능적 이슈가 발생한 위치와 장애의 원인을 쉽게 찾을 수 있도록 합니다. • 사용되고 있는 시스템의 자원에 대한 상세한 정보를 실시간 함께 제공함으로써 전반적인 시스템 운영 분석이 가능케 합니다. • 동시단말사용자 수, Active 서비스 개수, TP모니터 모니터링, CPU별 사용량 등은 제니퍼에서 유일하게 제공하는 기능으로서 정확한 시스템 상황을 모니터링하고 장애의 원인을 쉽게 판별할 수 있도록 합니다.
4. 제품 소개 장애 감시 • 지능적 장애 감지 알고리즘 내장으로, 실시간 시스템 장애를 정확히 감지합니다. • 직관적인 판단이 가능한 그래픽 인터페이스를 제공하여 성능적 이슈 또는 시스템 장애가 발생하기 이전에 빠른 조치가 가능토록 합니다. • 사용자 및 서비스 처리량, CPU, 메모리 사용량 등에 대한 임계치 설정이 가능하여, 장애 발생시 자동으로 경고 메시지를 발생합니다. • 성능적 이슈나 장애를 발생시킨 애플리케이션에 대한 정보를 자동 저장하여 사후 정확한 원인을 추적할 수 있도록 합니다.
4. 제품 소개 서비스 폭주시 부하량 제어 • 시스템이 감당할 수 없을 정도로 서비스 요청이 폭주할 경우, 자동으로 서비스 요청들을 제어하는 PLC(Peak Load Control: 임계부하제어) 기능을 제공하여 전체 시스템이 다운되는 상황을 피하고 안정적인 서비스가 가능하도록 합니다. • 시스템의 과부하로 서비스를 받지 못하는 고객을 위해 “현재 서비스가 폭주 중이오니 다음에 다시 접속하여 주십시오.” 라는 메시지 처리와 같은 임시 조치를 위한 기능을 제공합니다. • PLC 기능은 제니퍼의 가장 큰 특징 중의 하나이며, 24X7 무정지 시스템을 시스템 관리 차원에서 구현이 가능토록 합니다. • 부하가 많은 시스템에서도 반드시 수행되어야 하는 서비스 요청에 대해서는 업무별 서비스 우선순위를 설정할 수 있어 보다 안정적인 대고객 서비스가 가능합니다.
4. 제품 소개 시스템 확장시 필요한 용량 산정 • 사용자 정보에서 back-end 시스템에 이르기까지 각 단계별 서비스 처리량과 시스템 사용 자원에 대한 정확한 통계 데이터를 제공합니다. • 일자별 추이 분석이 가능하며 향후 시스템 확장을 위한 용량 산정이 정확하고 쉽습니다. • 지속적인 용량 분석으로 안정적인 서비스가 가능하여 기업에서 목표로 하는 서비스 수준을 맞출 수 있도록 합니다.
4. 제품 소개 기타 주요 특징 • 실시간 모니터링을 위한 초경량 운영 환경 • UDP를 사용하여 최소한의 데이터를 받은 후 가공하므로, 실 운영 중인 WAS에는 거의 성능 저하를 가져오지 않습니다. 이러한 가벼운 운영 환경을 제공하여 보다 안정적인 시스템 운영과 모니터링이 가능합니다. • 쉬운 커스터마이징 • 고객이 필요로 하는 모니터링 인터페이스를 쉽게 구현할 수 있도록 하여 사용하기 편하며 활용도를 높여드립니다. • 이기종 분산 시스템의 통합 모니터링 • 다양한 환경의 분산 시스템에 대하여 하나의 화면에서 통합적인 모니터링이 가능합니다. • 다양한 환경 지원 • 상용 또는 비상용에 관계없이 대부분의 OS와 WAS 환경에 대한 검증이 이미 완료 되어 있으므로 시스템 교체 및 환경의 변화에 대한 추가적인 비용이 필요하지 않습니다. • WAS 성능 및 장애 진단에 대한 높은 기술력 • 자바서비스컨설팅의 기술 체계는 WAS에 대한 기술력이 풍부하여 WAS 관점에서의 보다 안정적이고 정확한 성능 튜닝 및 장애 진단이 가능합니다.
4. 제품 소개 장점 및 이점 - 조직 및 관리측면 • 시스템 확장 및 개편시 심증적인 근거로 인한 용량 산출은 자칫 운영 시점에서 장애를 유발시킬 수 있으며 비용의 과다 지출을 발생시킬 수 있습니다. 제니퍼는 정확한 데이터 수집 및 통계를 근거로 하여 안정적인 시스템 확장 및 개편 시점과 용량을 제공하여 드립니다. • 제니퍼를 사용하여 운영팀 및 QA 와 테스트 팀은 J2EE 시스템에 성능적 이슈가 있는지 여부와 장애 발생시 원인을 찾고 적절한 조치를 취할 수 있도록 빠른 해결 방안을 제시함으로써 조직간의 커뮤니케이션이 원활하여 집니다. • 전체 시스템에 대하여 통합 관리 환경을 제공함으로써 시스템 운영 및 관리를 위한 단편적이고 체계적인 조직 운영이 가능합니다. • 장애 발생전 발생될 장애를 쉽게 예측할 수 있으며 장애 발생에 대한 자동 통지로 미연에 장애를 방지할 수 있습니다. • 24X7 안정적인 서비스가 가능하도록 부하량을 자동 제어함으로써 장애를 미연에 방지 할 수 있어 투자에 대한 효과를 극대화 할 수 있습니다. • 반드시 수행이 되어야 하는 서비스 요청을 장애 없이 즉각적으로 처리하도록 하여 대고객 만족도를 극대화 할 수 있습니다. • 시스템 확장 및 개편시 필요한 서비스 처리 정보에 대한 통계 데이터를 근거로 하여 신뢰성 높은 시스템 구성이 가능하여 효율적인 투자를 가능케 합니다.
4. 제품 소개 장점 및 이점 - 업무측면 • 웹 시스템 운영할 경우, 실제 시스템을 사용하고 있는 사용자에 대한 정보를 얻기 위해 많은 시간과 노력을 들여도 근거가 없는 데이터를 만들 수밖에 없었지만 제니퍼는 성능 이론을 근거로 하여 정확한 사용자 정보를 제공합니다. • 시스템의 부하 정도를 가늠할 수 있는 Active 서비스 정보를 성능 이론을 근거로 하여 산출 함으로써 보다 정확한 시스템의 상황을 판단할 수 있습니다. • 제니퍼에서 제공하는 PLC(Peak Load Control: 임계부하제어) 기능을 통한 장애 예방이 가능하여 최대한 시스템을 효율적으로 사용할 수 있도록 하며 운영자는 장애 조치를 위한 시간적 여유를 가질 수 있습니다. • 서비스되고 있는 시스템에 대해 사용자에서 back-end 시스템에 이르기까지 단계별 시스템 상황을 일목요연하게 제공함으로써 성능적 이슈 및 장애 발생 위치를 정확하고 빠르게 분별해 낼 수 있습니다. • 장애를 발생시킨 서비스 목록과 사용 자원에 대한 정확한 정보로 빠른 조치가 가능합니다.
4. 제품 소개 장점 및 이점 - 기술측면 • 제니퍼는 실시간 성능 이론을 근거로 한 정확한 시스템 운영 현황을 시각적인 그래픽을 통하여 제공하여 직관적인 시스템 상황 분석이 가능하며 장애 예측이 쉬워 시스템 장애를 미연에 방지할 수 있도록 하며, 장애가 발생하였을 경우, 자동 통보로 다운 타임을 현격히 감소시키며 빠른 조치가 가능케 합니다. • 모니터링을 위한 별도의 자원이 필요하지 않아 관리체계 구성을 간소화 할 수 있습니다. • 모니터링 인터페이스의 조작이 간편하여 별도의 교육 없이 설치가 쉽고 바로 사용이 가능합니다. • 다양한 운영 환경을 제공함으로써 시스템 환경 변화에 쉽게 적용이 가능하여 향후 시스템 확장 및 개편시에도 투자를 보호받을 수 있습니다. • 시스템의 성능적 이슈나 장애가 발생하였을 경우 WAS 기술 지원이 가능한 파트너사 체계로 인하여, 장애 분석뿐만 아니라 빠르고 정확한 장애 조치가 가능합니다.
5. 소비자가격 및 라이센스 라이센스 정책 • 제품 보증 • Warranty : 제품 검수 후 1년 • SA (Software Assurance) : Warranty 이후 제품 보증. 1년 공급가액 14% • NODE locked perpetual licensing • 초기 납품 기본 2CPU 이상 • Term licensing • SI사 대상, Performance Assurance Service • 1일기준, 5일기준 • Service licensing : 24개월 할부 • 수량별 차등 D/C 율 적용
5. 소비자가격 및 라이센스 가격 정책 • 지원 WAS별 Edition 제공 • Standard Edition : WebLogic, WebSphere, JEUS를 제외한 J2EE 표준을 따르는 WAS 제품 지원
6. FAQS • Q: 어떤 운영 시스템을 제니퍼가 지원합니까? • AIX, HP-UX, Solaris, Linux, Windows, AS400, WAS390, zLinux 등 상용 및 비상용 제품을 지원합니다. • Q: 어떤 WAS 제품들을 제니퍼가 지원합니까? • WebSphere, WebLogc, JEUS, Oracle 9iAS, Tomcat, JBoss, JRun, Resin 등 상용 및 비상용 제품을 지원합니다. • Q: 어떤 데이터베이스를 제니퍼가 지원합니까? • IBM DB2, MS SQL, mySQL Server, Oracle을 지원합니다. • Q: 어떻게 라이센스가 적용됩니까? • 제니퍼의 라이센스 모델은 per CPU 입니다. • Q:소프트웨어 유지보수 정책은 어떻게 적용됩니까? • 제품 공급가격의 14%로 적용됩니다.
7. 경쟁 제품 APM 시장은 비교적 초기 시장이며, 여러 제품들이 있으나 제니퍼의 PLC(Peak Load Control : 임계부하제어) 기능과 같이 시스템의 부하량을 직접 제어를 해주는 성능 관리 솔루션은 현재 경쟁 제품이 없이 유일합니다. APM 솔루션의 종류 • 테스트 설계 및 관리 • 테스트 케이스 생성 및 단위 테스트 • 메모리 누수 관리 및 코드 커버리지 • 기능 및 시스템 테스트 • 부하 테스트 • 모니터링 및 성능 분석 • 네트워크 및 시스템 관리
Network E High Level System System View D C Application A B Deep Diagnostics Develop Test Deploy coding Unit Testing System Integration Final QA Testing Load Testing Pre-Production Staging Monitoring Maintenance Developer Operators QA/Tester A : Test design & Management B : Test Case / Unit Test, Memory leak / Code coverage C : Functional test, System Integration/Load test D : Monitoring, Performance Analysis E : Network/System Management 7. 경쟁 제품
7. 경쟁 제품 Wily Technology – Wily (www.wilytech.com) • 특징 • 가격 : CPU당 기본으로 $8,000부터 시작 • 강점 • 사용자 필요에 따라 편집이 가능한 화면 제공 • 소스가 존재하지 않는 컴포넌트에 대해서도 모니터링 가능 • 성능 데이터들을 데이터 베이스에 저장하여 영구 데이터 보존 가능 • 약점 • 성능 및 장애 진단을 위한 상세한 데이터를 얻기가 어려움 • 성능 모니터링 기능만 제공. 개발자가 참고할 수 있는 상세한 성능 진단 정보를 제공하지 못함 • SNMP 어댑터, SQL Agent, Introscope Data API 등 기본적인 기능을 위한 모듈 모두 별도 추가해야 되므로 소요 비용이 큼 • 시스템에 끼치는 영향이큼 (성능 저하)
7. 경쟁 제품 VERITAS Software - VERITAS i3 (www.veritas.com) • 특징 • 3가지 모듈(Insight, Indepth, Inform)로 구성 • 강점 • 애플리케이션의 응답 속도에 영향을 주기 전에 문제점 발견과 성능 감소 원인 수집 • Insight : 사용자 관점과 전체 애플리케이션 구조 정보를 제공하며 애플리케이션 응답 시간 제공 • Indepth : 성능 저하의 원인을 밝히기 위한 HTTP 요청(servlets, JSP) 및 EJB 호출응답시간 제공 • Inform : 성능 관리 및 추세 분석을 위한 웹 기반의 포털 제공 • 약점 • 환경 설정이 어려움 • 리눅스용 제품이 없음 • CPU 성능 장애 요인을 추적하기 어려움 • 단지 컴포넌트 수준의 정보를 제공 • 애플리케이션 서버로는 IBM WebSphere, BEA WebLogic, Macromedia Jrun만 통합 지원
7. 경쟁 제품 Quest Software – PerformaSure (www.quest.com) • 특징 • Jprobe를 통한 자바 성능 관리 시장의 선두 주자. 2002년 2월 J2EE 성능 관리 시장을 위한 PerformaSure 1.0 출시. "트랜잭션 중심의 성능 정보" 특성 제공. • 가격 : 2002년 2월, CPU당 $25,000에서 시작. 시장 규모에 따라 $15,000- $40,000판매 • 강점 • PerformaSure의 "Tag & Follow" 데이터 취합 및 저장 방법 제공 • PDF 포맷의 리포트 작성 • 부하 분산 및 분산 환경 지원 • 약점 • 복잡한 환경 설정 및 부하가 큼 • 실시간 성능 분석 기능이 제공되지 않음 • 리포트 작성시 데이터 전환에 제한이 많으며 완전한 데이터 전환이 안됨. • 제품이기능별로 모듈화 되어있어 추가 비용이 큼 • 데이터 수집 엔진을 위한 별도의 하드웨어 서버 장비 필요
7. 경쟁 제품 OPNET – Panorama (www.opnet.com) • 특징 • 2004년 10월 Altaworks사 인수. 자동적인 문제 발생 가능성 분석 기능 제공.실시간 성능 모니터링 기능이 약함. • 강점 • 서블릿, JSP, EJB, JDBC, JNDI등을 포함한 컴포넌트들을 위한 성능 메트릭스 제공 • 3-D 웹을 이용한 정보로 성능을 입체적으로 표현 • 성능 관련 예상되는 원인 분석 제공 • IT 운영자, QA/테스트 및 개발자간의 J2EE 컴포넌트(Servlet, EJB, JSP) 모니터링 정보 공유 • 약점 • 성능 분석이 정확하지 않으며 데이터베이스 구축 필요 • 성능 모니터링 기능을 제공하나 개발자에 의한 추적이 어려움
8. 마케팅 계획 SWOT 분석
9. 요약 제니퍼는 자바서비스컨설팅이 J2EE 애플리케이션을 위한 성능 관리 분야에서 강한 입지를 가질 수 있게 하고, WAS를 사용한 시스템 구축에 필수 불가결한 솔루션으로 평가될 수 있도록 하리라 기대되는 제품입니다. APM 시장 자체가 아직 초기 단계이며 기존 제품에 대해 고객의 신뢰도가 떨어져 있습니다. 또한 무엇보다도 아직 이 분야의 확실한 리더가 없기 때문에 제니퍼로 얻을 수 있는 기회는 상대적으로 많습니다. 자바서비스컨설팅은 APM 분야의 업계 선두적인 기업으로 잘 자리잡을 것입니다. 그리고 그 동안의 성능 및 장애 진단 경험을 기반으로, 고객이 운영팀, QA팀, 테스트팀을 대상으로 J2EE 시스템의 성능 관리에 대한 새로운 접근을 제시할 것입니다. 감사합니다.
III Jennifer 2.0 상세 소개
제니퍼2.0 의 사용 용도/목적 자바(Java)기반의 시스템은 그 언어적 특성 및 WAS제품의 기능적 미약으로 인해, 엔터프라이즈 웹 기반 시스템 운영 단계에서 반드시 필요로 하는 접속자 및 부하량 실시간 모니터링, 장애 감시/분석, 용량산정을 위한 정확한 데이터 추출 등의 핵심적 모니터링 기능이 매우 미약한 것이 현실입니다. Jennifer 2.0 for J2EE(이하 Jennifer, 제니퍼)은 다년간 국내 100여곳 이상의 웹시스템 장애진단 경험을 토대로 핵심적으로 필요한 기능이 무엇인지를 도출하고 그 동안 연구한 성능이론(Performance Theory)을 바탕으로 구현된 제품이며 다음과 같은 목적으로 사용될 수 있습니다. • WAS서버 접속자/부하량 실시간 모니터링 • 실시간 시스템 장애 감시기능(지능적 장애감지 알고리즘 내장) • 성능장애의 원인 분석 용도 • 애플리케이션별 부하량 및 리소스 분석 및 튜닝 용도 • 부하량 폭주시 성능제어력 확보 • 각종 부하량 일자별 통계 데이타 제공 • 향후 용량산정 및 부하량 추이분석
제니퍼2.0의 사용 용도/목적 제니퍼2.0 은 실 사이트의 실무자들에게 흔히 일어나는 다음과 같은 질문에 대한 해답을 그 즉시 제공합니다. • 이과장, 지금 몇명이나 접속되어 있어? 지난 달에 비해 이번달 접속자가 몇명이야? • 오늘 왜 이렇게 응답이 느리지? 부하량이 급증한거야? • 어떤 어플리케이션이 문제야? 이 시스템 지금 왜 이래? • 지금 Active하게 돌고 있는 애플리케이션이 몇개야, 뭔데? • 김과장, 시스템 증설해야되나? 언제쯤 얼마나 증설하면 돼? • 저 어플리케이션은 제가 개발했는데요, 얼마나 튜닝해야 된다는 거죠? 목표치를 알려줘요 • 애플리케이션 튜닝을 좀더 해야되지 않아? 상위10개 목록를 뽑아 개발팀에 보내도록.. • 계약시에, 5000명을 수용하는 시스템으로 약속하셨는데, 지금 그것을 commit한거요? • 어? 전 Connection/Statement close 다 했는데요. 어디가 문제라는 건지 찾아줘봐요. • WAS서버가 CPU 25%를 계속치고 있어요, CPU하나를 계속 쓰고 있는데, 어떤 놈인지? • 아니, DB가 벅벅거리면 앞에 있는 WAS가 죽어나가는 것은 당연한 것 같기도 한데, 그래도 말이 안되잖아, 제어할 방법 없어, 오팀장? • 다른 것은 다 안돼도 좋지만, 저 서비스는 꼭 해야돼, 서비스별로 우선순위를 부여할 수 있나? • DB SQL는 충분히 튜닝했어요. 뭘 얼마나 더 튜닝해야 한다는 거죠? • 선배님, WAS에서 Thread별/애플리케이션별로 CPU사용량 알수 있나요? • 아, 저기 3시간째 돌고 있는 저 Thread, 어떻게 좀 죽일 수 없나요? • 권대리, 복잡한 거 말고, 시스템이 정상적인지 어떤지 내가 좀 쉽게 모니터링 할 수 있겠나? 요즘 시스템이 다운되면 대외적으로 큰일이야..
제니퍼2.0이 제공하는 기능 제니퍼2.0은 다음과 같은 기능을 제공하고 있습니다. • 실시간 동시단말사용자수(5초/30초/5분, 24시간 그래픽 통계) • 실시간 ActiveService 목록(requestmon/Wmon의 가장 기본적인 기능) • 실시간 현재수행중인 애플리케이션 응답시간 및 통계데이타 • 단위시간당 호출빈도/처리빈도(TPS, Arrival rate/Service rate) • Thinktime 실측 알고리즘 내장 • 실시간 Active SQL 모니터링 및 SQL 수행 통계 데이타 • CPU/MEM/JVM Heap 사용량 모니터링 • 일자별 방문자수, 처리건수 통계화 • 어플리케이션별 부하량(호출건수/평균응답시간) 통계 • 애플리케이션별 CPU사용량 통계(튜닝시 핵심 항목) • 부하량 초과시 시스템 장애를 극복하기 위한 PPC(Peak Point Control) 기능 내장 • 애플리케이션 그룹별 PPC(Peak Point Control) 적용가능 • 응답느린 애플리케이션 자동 로깅 기능(튜닝대상 및 장애원인분석) • JDBC Connection 미반환 및 PreparedStatement close 추적기능 • 각종 실시간 Alert 기능(CPU초과, Active서비스초과, 기타 설정가능) • 업무별 구분된 다수의 머신/ 업무시스템 일괄 통합모니터링 • DB를 사용치 않고, 파일기반으로 정보관리 • 웹브라우져(애플렛) 기반으로 그래픽한 모니터링 • Tomcat/JRun/WebSphere/WebLogc/JEUS/9iAS 등 모든 WAS 통합관리가능
제니퍼2.0 모니터링 툴 기능 소개 – 통합 모니터링 제니퍼2.0는 업무별로 구분된 여러 단위 업무 시스템을 하나의 화면에서 통합적으로 모니터링 가능하여 화면구성이 손쉽게 커스터마이징 됩니다. 본 화면은 모 W은행 인터넷뱅킹 전 시스템에 적용되어 있는 제니퍼2.0의 모니터링 화면입니다. 기업/개인/스피드조회/포털 등 16대의 서버로 구성된 총 9개 단위 업무시스템을 종합적으로 감시하고 있으며, 응답시간이 8초이상 지연되고 있는 Active서비스의 개수가 붉은색 그래프로 높게 나타나고 있듯이 본 시스템은 현재 정상적인 서비스를 수행하고 있지 않음을 표현하고 있습니다.
제니퍼2.0 모니터링 툴 기능 소개 –Active 서비스 실시간 조회 해당 그래프를 더블클릭하면, 현재 지연처리되고 있는 어플리케이션이 무엇인지 실시간 확인됩니다. 어느 IPAddress에서 호출된 어떤 어플리케이션이 현재 몇 초 동안 지연되고 있는지 곧바로 확인할 수 있습니다. 현재 60-80초 이상 지연처리되고 있음이 확인됩니다.
제니퍼2.0 모니터링 툴 기능 소개 – 모니터링 데모 아래는 모 L 쇼핑몰에서 현재 사용중인 제니퍼의 모니터링 화면입니다. 동시단말사용자, 초당처리건수, Thinktime, 메모리사용량, 평균응답시간, 시스템 CPU사용량, Active서비스 등이 오디오 이퀄라이져처럼 실시간 관찰됩니다. 동영상으로 데모를 보실 수 있습니다. http://www.javaservice.com/lwy/wmon20_3.zip (36M) http://www.javaservice.com/lwy/wmon_avi.zip (6M) 업무시스템별 상세 모니터링 화면 Active서비스 개수 시스템 CPU사용량 24시간 Active서비스 실시간 Active서비스 24시간 CPU 실시간 CPU사용량 서버별 접속자수 10분 24시간 동시단말사용자수 초당처리건수 10분 24시간 TPS(초당처리건수) 평균응답시간 10분 메모리 시간당 방문자수 시간당 처리건수 서로 다른 3개의 단위 업무 통합 모니터링 화면
제니퍼2.0 모니터링 툴 기능 상세 소개 – 실시간 Active서비스 개수 성능적인 이슈로 인하여 장애가 발생할 경우, 가장 먼저 변화하는 수치는 현재 지연 처리중인 어플리케이션의 개수, 즉, Active 서비스의 개수가 비정상적으로 높아지게 됩니다. 제니퍼 2.0은 Active서비스에 대한 실시간 모니터링이 가능합니다. • 푸른색: 응답시간이 0~1초인 Active서비스의 개수 • 하늘색: 응답시간이 1~3초인 Active서비스의 개수 • 분홍색: 응답시간이 3~8초인 Active서비스의 개수 • 붉은색: 응답시간이 8초 이상인 Active서비스의 개수 예를 들면, 위와 같이 갑작스럽게 대부분의 어플리케이션이 8초 이상 응답지연이 발생하면서 Active서비스의 개수가 100여개에 이르러, 서비스큐잉현상이 심화되어 가고 있음을 알 수 있습니다.
제니퍼2.0 모니터링 툴 기능 상세 소개 – 실시간 CPU 사용량 Active서비스의 개수와 함께, 각 인스턴스가 속해있는 머신의 CPU사용량을 USER, KERNEL, I/O WAIT 색깔별로 구분하여 실시간 보여줍니다. • 푸른색: CPU USER 사용량 • 붉은색: SYSTEM(커널) 사용량 • 분홍색: I/O WAIT 사용량 뿐만 아니라, 24시간 하루 동안의 각 서버의 CPU사용량 통계를 보여주며, Peak시간대에 얼마나 CPU Utilization이 높았는지를 확인할 수 있습니다.
제니퍼2.0 모니터링 툴 기능 상세 소개 – 동시단말사용자수 실시간 조회 현재까지 그 어떤 제품도 동시단말사용자수를 보여주고 있지 않습니다. 기껏해야 HTTP Session개수가 몇 개인지를 보여줄 뿐입니다. 성능이론에 의하면, 동시단말사용자수는 현재 PC앞에 앉아 있는 단말사용자수로서, ActiveUser와 In-active User의 합으로 표현됩니다. HTTP 프로토콜의 connection-less 적 특성으로 인해, 그 수치를 구하기가 과거의 Client/Server의 그것과는 달리 기술적으로 매우 힘들었습니다. 그러나, 제니퍼는 성능이론의 구체화 및 실사이트의 부하량 분석 경험을 기반으로 동시단말사용자수를 실시간 측정하는 지능적 알고리즘을 구현하였습니다. 각 인스턴스별 동시단말사용자수 동시단말사용자수 24시간 동시단말사용자수 현황
제니퍼2.0 모니터링 툴 기능 상세 소개 – 그 외 모니터링 항목 그 외 다음과 같은 항목을 모니터링 하실 수 있습니다. • 동적컨텐츠에 대한 1초당 호출빈도(TPS) • Thinktime(사용자의 응답후 다음 호출시까지의 시간) • 자바 메모리 현황(Heap Total, Used Memory) • 평균응답시간(전체 및 각 인스턴스별) 및 표준편자 • 시스템 메모리/네트웍, 인스턴스별 CPU/메모리 사용현황 • 시간당 방문자수 • 시간당 호출건수
제니퍼2.0 모니터링 툴 기능 상세 소개 –Active SQL 실시간 조회 및 통계 현재 수행중인 어플리케이션의 모니터링 시에, 현재 수행중인 SQL문장을 실시간 확인하실 수 있습니다. 응답지연현상이 SQL수행에 기인한다면, 어떤 SQL인지를 곧바로 확인한다는 것이 대단히 중요합니다.
제니퍼2.0 모니터링 툴 기능 상세 소개 –Active SQL 실시간 조회 및 통계 또한 지금껏 WAS에서 수행된 모든 SQL에 대한 수행건수,응답시간 등의 통계데이타를 축적하실 수 있습니다.
제니퍼2.0 모니터링 툴 기능 상세 소개 – 어플리케이션 부하량 통계 어플리케이션별로 수행건수, 평균응답시간, 특히, 어플리케이션별 CPU사용량을 통계화하여 보여줍니다. 어떤 어플리케이션이 CPU를 많이 점유하였는지를 확인하고, 효과적으로 튜닝한다면, 시스템 H/W 용량관리 관점에서 매우 유용한 정보가 될 것입니다.
제니퍼2.0 모니터링 툴 기능 상세 소개 –Connection/Statement Closing 추적 JDBC Connection을 Pool에서 가져와 사용 후 close() 하지 않을 경우, 가용연결 고갈로 시스템 장애의 주 원인이 되며, PreparedStatement/ResultSet 를 close()하지 않을 경우, 장시간 서비스 후, JVM의 Heap영역이 아닌 Native Memory 고갈로 java.lang.OutOfMemoryError의 주원인이 됩니다. 제니퍼는 응용어플리케이션에서 사용 후 close하지 않은 Connection/Statement/PreparedStatement/ResultSet 을 추적하여 어느 위치에서, 어떤 SQL과 연관된 모듈인지를 실시간 찾아주며, 필요에 따라 강제로 반환을 시켜 줍니다.
제니퍼2.0 모니터링 툴 기능 상세 소개 – 시스템 CPU 사용현황 웹서버, WAS서버, DB서버 등 Tier 별로 전체 서버의 CPU별 Utilization을 웹 기반의 그래픽화면으로 제공합니다.
제니퍼2.0 모니터링 툴 기능 상세 소개 – 부하량 폭주시 성능 제어력(PPC) 만약, 성능장애가 일어난다면, 그 유형 중 하나는 Backend HOST 트렌젝션의 처리능력이 상대적으로 낮아 뒤쪽에서부터 서비스큐잉현상이 일어나는 경우입니다. 이 경우, 비록 원인은 앞에 있는 것이 아니라 뒷단에 있지만, 뒷단부터 막혀 앞단까지 차올라오기 시작하면, 종국에는 WAS서버 및 웹서버가 모두 Full이 차서 더 이상 서비스를 하지 않은 hang현상으로 이어지게 됩니다. 이러한 유형의 장애상황에서는 앞 단의 웹서버나 WAS서버의 증설과 같은 방법으로는 결코 문제를 해결하지 못합니다. 유일한 해결책은 서비스큐잉이 일어날 법한 각 구간마다, 적절한 Active Service의 개수를 제한하고, 일정한 개수를 초과할 시에는 해당 요청을 또 다시 서비스큐에 넣을 것이 아니라, "죄송합니다. 서비스가 폭주 중이오니 잠시 뒤에 이용해 주세요"라는 메세지를 곧바로 발생시켜야 "넘쳐나는" 상황을 회피할 수 있게 됩니다. 이러한 기법을 PPC(Peak Point Control)이라 합니다. 서비스큐잉 현상 발생시에 시스템이 최대한 처리할 수 있는 데 까지 처리케하고, 이를 넘어서는 부하량 상황에서도 전체 시스템이 주저앉는(?) 상황을 피해 갈 수 있도록 하는 "성능제어력“의 필요성이 대두됩니다. (위 화면은 PPC 100개가 설정되어 있는 상황을 보여주고 있습니다.) 현재, 제니퍼는 간단한 설정만으로 어플리케이션 수정 없이 적용가능하며, 유사한 장애 발생시에 매우 효과적인 대응이 가능할 것으로 예상합니다. 또한 어플리케이션 중요도에 따른 어플리케이션 그룹별로 설정 가능합니다.