일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- Spring
- 알고리즘
- 코딩봉사
- 소프티어
- 프로그래머스
- 문제풀이
- CJ UNIT
- kotlin
- SW봉사
- BFS
- 백준
- softeer
- java
- 1과목
- 스프링
- 백준알고리즘
- 백준 알고리즘
- python
- C++
- 데이터베이스
- 정보처리산업기사
- 자바
- 코틀린
- 코딩교육봉사
- SQL
- 공부일지
- MYSQL
- 회고
- programmers
- 파이썬
- Today
- Total
JIE0025
애플리케이션 성능 관리 APM (Application Performance Monitoring) 본문
✅ 개요
애플리케이션 성능에 대한 이야기를 해보자.
콘서트 티켓 예약시 사이트가 느리고 먹통이 되어서 예약을 진행할 수 없게 되는 상황이 발생한다.
WAS가 받아들일 수 있는 요청의 개수( MAX Thread )가 넘어서게 되면
스레드를 사용할 수 있을 때까지 남은 요청들이 대기하게 된다.
결국 애플리케이션의 성능 문제인것이다.
개발자 / 엔지니어는 성능 향상을 위한 결정을 하게 된다.
- WAS 인스턴스를 다중화한다던지,
- Thread수를 늘린다던지,
- 캐시를 도입하여 캐시적중률을 높힌다던지
- 빠르게 읽기 위한 NOSQL을 사용한다던지...
등등 여러가지 성능을 개선할 수 있는 방법이 존재한다.
✅ APM (Application Performance Monitoring)
애플리케이션의 성능 개선을 어떻게 이룰 것인지 고민하기 위해선
어떤 부분이 / 왜느리고/ 어떻게 해결해야하는지 알아야한다.
이때 도와주는 것이 바로 APM이다.
- 시스템의 CPU 메모리 트래픽 쿼리실행 등의 정보 제공
- 실시간 액티브 서비스 모니터링
- 실시간 E2E 거래 추적
- Call Tree 등
✅ APM 종류
성능 관리 대상과 측정 위치에 따라 3가지로 구분된다.
- 애플리케이션 성능 관리
- DB(데이터베이스) 성능 관리
- E2E(End-to-End, 최종 사용자) 성능 관리
⏺ 애플리케이션 성능 관리
- 일반적으로 말하는 APM이 애플리케이션 성능관리를 의미한다.
- 애플리케이션이 실행되는 WAS / 미들웨어 등을 대상으로 모니터링한다.
- 개발 언어 의존성이 높아서 언어별 솔루션이 존재한다.
⏺ DB(데이터베이스) 성능 관리
- 개발자가 작성한 SQL튜닝 및 DBMS SW의 병목 현상등을 모니터링한다.
⏺ E2E(End-to-End, 최종 사용자) 성능 관리
- 최종 사용자(기업고객 /일반유저) 성능을 측정하는 솔루션이다.
- E2E기반 기술은 네트워크에 대한 기술을 다룬다. 네트워크스위치 / 방화벽 / IPS / IDS / 시큐리티 등
✅ 대표적인 솔루션 / 오픈소스
⏺ Jennifer
시장점유율이 높은 APM이다.
APM은 기술적특성상 WAS와 함께 동작하여 WAS에 영향을 줄 수 있는 부작용이 있지만
제니퍼소프트가 이를 경량화하여 WAS가 받는 영향을 최소화 시켰다.
SI 방식으로 개발되어 있어 유지보수 / 차세대 프로젝트에서 문제가 발생할 가능성이 높을수있다고 한다.
⏺ 실시간 액티브 서비스 모니터링
웹 애플리케이션 서버에 들어온 모든 트랜잭션 처리과정을 스피드미터 그래프로 제공한다.
트랜잭션이 어디에서 대기하는지, 어떤 응답 지연을 경험하고 있는지,
수행중인 SQL 쿼리 등 수행상태 정보를 한번에 보여준다.
⏺ 실시간 X View
모든 트랜잭션의 응답 시간을 점 그래프로 나타내어 트랜잭션의 응답시간분포/ 패턴을 신속하게 감지한다.
추후 깊게 들어가서 블로깅 해볼 에정이다. :D
⏺ 엑셈 (EXEM)
지난 10년간 DB 성능 관리 솔루션 시장에서 국내 점유율 1위이다.
최종사용자모니터링, 트랜잭션모니터링, 네트워크/시스템모니터링, 각종 서버 구성요소 모니터링, 품질테스트, 웹/모바일 성능평가 등을 포괄한다.
>> JVM Performance Optimizing 및 성능분석사례라는 책도 엑셈에서 출간한 책이다.
⏺ Scouter
LG CNS 에서 배포한 오픈소스 APM이다.
자바 애플리케이션의 성능을 모니터링하고 분석할 수 있다.
https://github.com/scouter-project/scouter/releases/tag/v2.15.0
references
https://m.blog.naver.com/shakey7/221913007126
APM (Application Performance Management) (웹 서비스 / 데이터베이스 / WAS 웹 애플리케이션 서버 / E2E EUM / 제
1. APM (Application Performance Management) (1) 기본 개념 - IT 서비스의 질은 여러 구간을 잇...
blog.naver.com
APM이란? 종류와 흔한 이슈 발견 방법
APM은 Application Performance Management/Monitoring의 줄임말로써, 말 그대로 애플리케이션(시스템, 응용 소프트웨어)의 성능과 서비스 안정성을 감시하고 관리하는 솔루션을 말한다. 이러한 솔루션들은 실
cocologue-study.tistory.com
'Infra > Middleware' 카테고리의 다른 글
프록시의 개념과 종류 (Foward Proxy, Reverse Proxy) (0) | 2025.05.19 |
---|---|
[APM][제니퍼5] Jennifer 5의 아키텍처를 알아보자. (0) | 2025.05.10 |
[Middleware] TMAX -Anylink7 설치 하기 (1) | 2025.04.30 |
[WAS][Tomcat] 톰캣에 WAR 배포하는 방법 (0) | 2025.03.25 |
[WAS] TMAX - JEUS7 설치하기 (13) | 2025.03.20 |