tencent cloud

Application Performance Management

Application Performance Management(APM)는 애플리케이션 성능 모니터링을 위한 메트릭, 추적 및 로그를 포괄하는 원스톱 서비스입니다. 오픈 소스 프로토콜을 통해 쉽게 액세스할 수 있으며, 문제 해결을 효과적으로 가속화하고 아키텍처 병목 현상을 찾을 수 있습니다.

소개

Application Performance Management(APM)는 분산형 애플리케이션 아키텍처에 대한 성능 분석 및 자동 문제 해결 기능을 제공합니다. APM을 사용하면 프로브를 설치하여 데이터를 수집하고 다양한 애플리케이션을 실시간으로 모니터링할 수 있으므로 코드를 수정할 필요 없이 복잡한 비즈니스 시스템의 안정성과 가용성을 보장할 수 있습니다. 이러한 방식으로 성능 문제를 신속하게 찾고 MTTR(평균 수리 시간)을 단축하며 애플리케이션 성능을 최신 상태로 유지하고 사용자 경험을 개선할 수 있습니다.

효과
토폴로지 자동 검색
토폴로지 자동 검색

분산형 아키텍처에서 실시간으로 업스트림/다운스트림 종속성을 검색하고 종속성 토폴로지를 그려 비즈니스 시스템의 모든 애플리케이션 및 컴포넌트의 상태를 확인할 수 있습니다.

호출 추적
호출 추적

마이크로서비스 아키텍처에서 각 요청의 전체 경로를 자동으로 구축하고 풍부한 업스트림/다운스트림 정보를 수집하여 성능 병목 현상을 빠르게 찾습니다.

높은 안정성과 신뢰성
높은 안정성과 신뢰성

Tencent Cloud의 빅 데이터 기능과 다년간의 마이크로 서비스 모니터링 및 추적 경험을 기반으로 안정적이고 신뢰도 높은 추적 기능을 제공합니다.

다차원 드릴다운 분석
다차원 드릴다운 분석

각 서비스, API, 서비스 인스턴스의 호출을 지속적으로 관찰하고 해당 시스템에서 미들웨어의 호출 데이터를 탐지합니다. 이러한 방식으로 다양한 차원에서 시스템 실행 상태를 쉽게 파악하고 주요 모니터링 메트릭을 기반으로 드릴다운할 수 있습니다.

실시간 알람
실시간 알람

Cloud Monitor가 제공하는 유연한 알람 기능을 활용하여 애플리케이션 성능 변동에 따라 적절한 알람 규칙을 설정하면 예외가 발생하는 즉시 APM이 알람을 전송합니다. 이를 통해 제품 가용성과 사용자 경험을 신속하게 개선할 수 있습니다.

오픈 소스 호환성
오픈 소스 호환성

데이터 리포트 구성을 수정하기만 하면 Skywalking 및 Jaeger에서 APM으로 모니터링 서비스를 마이그레이션할 수 있습니다. APM은 다양한 프로그래밍 언어의 프로토콜을 지원하며 업계에서 널리 사용되는 표준인 Opentracing과 호환됩니다. 이를 통해 복잡한 운영이 필요하지 않고 개발 비용이 절감됩니다.

기능
원스톱 호출 체인 분석

APM의 추적 기능은 마이크로서비스 아키텍처의 서비스 전반에 걸쳐 각 요청의 전체 경로를 자동으로 구축할 수 있습니다. 요청 매개변수, 트랜잭션 데이터, 오류, 메소드 스택 예외, 기본 인스턴스 환경 정보 등 다양한 정보를 수집하여 원스톱 전체 추적 분석을 구현하고 문제 해결 효율성을 높입니다. 이를 통해 비표준 형식으로 분산된 로그를 수집하기가 어렵고 업스트림/다운스트림 서비스 로그 연결이 어려운 문제를 해결할 수 있습니다.

애플리케이션 종속성 토폴로지 자동 검색

APM은 분산형 호출 추적 모델을 통해 애플리케이션 로직 토폴로지를 자동으로 검색한 다음 애플리케이션 레벨에서 글로벌 토폴로지를 그려 애플리케이션 간의 복잡한 종속성을 시각적으로 표시하고, 실시간 데이터 드릴다운 및 스마트 애플리케이션 상태 분석을 통해 애플리케이션 또는 컴포넌트 병목 현상을 신속하게 찾습니다. 또한 APM은 애플리케이션의 업스트림/다운스트림 종속성을 표시하여 업스트림 부하가 다운스트림 서비스에 어떤 영향을 미칠 수 있는지 보여주므로 애플리케이션의 상태 및 성능 지표를 종합적으로 분석할 수 있습니다.

다차원 분석

APM은 API, 예외 및 데이터베이스 호출과 같은 다양한 차원에서 성능 및 예외 메트릭을 적극적으로 집계하여 느린 API, SQL 문 및 빈번한 예외를 신속하게 식별할 수 있도록 도와줍니다. 빠른 추적 드릴다운 기능을 활용하면 MTTR을 크게 단축할 수 있습니다.

데이터베이스 호출 모니터링

APM은 MySQL, Oracle, MongoDB 및 Redis와 같은 다양한 유형의 데이터베이스를 포괄적으로 모니터링할 수 있습니다. 비즈니스 시스템 관련 데이터베이스 성능 메트릭을 자동 수집하여 데이터베이스의 느린 SQL, 호출 및 읽기 성능 등을 파악하고 데이터베이스 성능 문제를 정확하게 찾을 수 있도록 도와줍니다.

사용 사례

주요 고충점

비즈니스가 성장함에 따라 비즈니스 로직이 점점 더 복잡해지면서 애플리케이션 성능 문제를 분석하고 찾기가 더 어려워져 모니터링 및 운영에 큰 문제가 발생합니다.

  • 애플리케이션 간의 종속성은 복잡하고 분류하기 어렵습니다.
  • 호출 추적이 너무 길어 문제를 쉽게 찾고 해결할 수 없습니다.
  • API 및 데이터베이스 호출 관계는 복잡하고 관리하기 어렵습니다.


솔루션

  • APM은 애플리케이션 토폴로지 자동 검색을 통해 성능 병목 현상을 찾습니다.
  • 주요 성능 메트릭 비교를 기반으로 애플리케이션 성능을 최적화합니다.
  • 메트릭 변경에 대한 알람을 구성하고 예외를 즉시 감지할 수 있습니다.
성능 병목 현상 찾기

주요 고충점

프로덕션 환경에서 문제가 발생하면 비즈니스 운영이 중단될 수 있습니다. 서비스 간의 복잡한 종속성으로 인해 운영 담당자가 문제의 원인을 찾기 어려워 사용자 경험이 저하됩니다.


솔루션

  • APM은 API 예외를 모니터링하여 시스템 오류 발생 시 즉시 API 호출 상태를 확인하고 API 예외를 찾을 수 있습니다.
  • 그런 다음 호출을 추적하여 애플리케이션 호출 상태 및 호출 시간과 같은 주요 메트릭을 종합적으로 모니터링할 수 있습니다.
문제 해결