• EnglishEspañol日本語한국어Português
  • 로그인지금 시작하기

이 한글 문서는 사용자의 편의를 위해 기계 번역되었습니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

파이썬 메시지 큐

Python 에이전트는 수신 및 발신 메시지 모두에 대해 메시지 처리 성능에 대한 가시성을 제공하는 Pika RabbitMQ 클라이언트 라이브러리 , Kafka Python 클라이언트 라이브러리Confluent Kafka 클라이언트 라이브러리 를 지원합니다.

뉴렐릭 UI는 메시지 수신(메시지 구독/소비)을 통해 시작된 트랜잭션을 Message 백그라운드 작업으로 표시합니다. 메시지 생성은 프로세서 트레이스에도 나타납니다.

요구 사항

Message Queue

Python agent version required

피카 래빗MQ

2.88.0.72

카프카 파이썬

8.2.0.181

컨플루언트 카프카

8.2.0.181

자세한 내용 은 릴리스 정보 를 참조하십시오.

주의

TornadoConnection 을 사용하는 소비자에 대해 RabbitMQ 메시지 작업이 시작되지 않습니다.

주의

Kafka를 통해 메시지를 소비하는 경우 소비자가 소비하는 각 메시지에 대해 트랜잭션이 보고됩니다. 여러 메시지가 한 번에 소비되는 대량 소비 작업의 경우 트랜잭션이 보고되지 않습니다.

백그라운드 작업으로 성능 향상

웹 애플리케이션의 응답성을 높이는 한 가지 방법은 작업을 백그라운드 프로세스에 위임하는 것입니다. 메시지 큐는 일반적으로 이러한 프로세스 간 통신에 사용됩니다.

메시지 대기열 시스템과 관련하여 응용 프로그램은 일반적으로 메시지 브로커와 상호 작용하여 메시지를 보내고 받습니다. RabbitMQ Pika의 경우 이 클라이언트 라이브러리를 사용하면 Python 애플리케이션이 AMQP(Advanced Message Queuing Protocol) 0.9 이상을 구현하는 메시지 브로커와 인터페이스할 수 있습니다.

Python 에이전트는 클라이언트 라이브러리를 사용하여 보내고 받은 메시지를 보여줍니다. 이 가시성을 통해 다음을 포함한 세부 정보를 볼 수 있습니다.

  • 앱에서 생성된 메시지 수
  • 앱에서 메시지 게시/생성에 소요하는 시간
  • 앱에서 메시지를 처리/소비하는 데 소요되는 시간

APM 은 대기열과 상호 작용하는 작업을 편리하게 그룹화하고 보고합니다. 이 정보를 분석하면 메시지 전달 아키텍처에서 병목 현상과 성능 향상을 위한 영역을 보다 쉽게 식별할 수 있습니다.

지원되는 측정항목

Message Queue

Pika RabbitMQ

Kafka Python

Confluent Kafka

Publish a Message

예 -- 라고 함 Put

예 -- 라고 함 Produce

예 -- 라고 함 Produce

Receive a Message

예 -- 라고 함 Take

예 -- 라고 함 Consume

예 -- 라고 함 Consume

Serialization

아니요

Deserialization

아니요

아니요

Heartbeat

아니요

아니요

New Relic UI에서 보기

대기열 작업은 선택한 앱에 대한 APM의 Transactions 페이지 에 나타납니다.

Put (메시지 게시) 및 Take (메시지 수신) 지표는 Breakdown table 에 표시되며 RabbitMQ의 경우 MessageBroker 지표로 분류됩니다. 예는 다음과 같습니다.

one.newrelic.com > All capabilities > APM & services > (select an app) > Monitor > Transactions > (select a transaction): 트랜잭션의 Breakdown table 는 대기열 작업을 RabbitMQ에 대한 MessageBroker 지표로 분류하고 이를 Put (메시지 게시) 또는 Take (메시지 수신)으로 레이블을 지정합니다.

트랜잭션 추적 은 메시지에 대한 추가 세부 정보도 제공합니다.

APM에 있는 앱의 Summary 또는 Transactions 페이지에서 프로세서 트레이스를 선택할 수 있습니다.

프로세서 트레이스 요약 페이지의 Slowest components 섹션에 RabbitMQ에 대한 PutTake 작업이 표시될 수 있습니다. 예를 들어:

one.newrelic.com > All capabilities > APM & services > (select an app) > (select a transaction trace): 이 예에서 선택한 프로세서 트레이스의 Summary RabbitMQ 작업을 색상이 지정된 바 차트로 표시합니다. Slowest components 섹션에는 RabbitMQ PutTake 결과도 나열되어 있습니다.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.