• ログイン無料アカウント

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

メッセージキュー

New RelicのRubyエージェントは、 Bunny RabbitMQクライアントライブラリ をサポートしており、受信メッセージと送信メッセージの両方について、メッセージ処理のパフォーマンスを把握することができます。

APM UIでは、RabbitMQのメッセージ受信(subscribe/consumeメッセージ)を介して開始されたトランザクションが、 Message のバックグラウンドタスクとして表示されます。RabbitMQによるメッセージ作成もトランザクショントレースに表示されます。

要件

New Relicが必要です Rubyエージェントバージョン4.3.0以上 。インスツルメンテーションは、 サポートされているバージョンのBunny AMQP では自動的に行われ、追加の設定は必要ありません。

バックグラウンドタスクのパフォーマンス改善

Webアプリケーションの応答性を向上させる方法の一つとして、バックグラウンドプロセスに作業を委ねる方法があります。このプロセス間通信には、メッセージキューがよく使われます。

メッセージキューイングシステムのコンテキストでは、アプリケーションは通常、メッセージブローカーと対話してメッセージを送受信します。RabbitMQ Bunnyクライアントライブラリを使用すると、RubyアプリケーションはAMQP(Advanced Message Queuing Protocol)を実装したメッセージブローカーとインターフェースをとることができます。

New Relic の Ruby エージェントは、RabbitMQ クライアントライブラリを使用して送受信されたメッセージを表示します。この可視性により、以下のような詳細を確認することができます。

  • アプリで生成されたメッセージの数
  • アプリがメッセージを公開するのにかかる時間
  • アプリが"消費された" メッセージの処理に費やす時間

APM は、キューとやりとりするオペレーションを便利にグループ化し、レポートします。この情報を分析することで、メッセージパッシングアーキテクチャのボトルネックやパフォーマンス向上のための領域をより簡単に特定することができます。

キューの操作

サポートされているキュー操作のエントリーポイントは、APMのユーザーインターフェースでは、 Put (メッセージの発行)、 Take (メッセージの受信)として表示されます。

キューの操作

メッセージの公開 (Put in UI)

メッセージの受信 (Take in UI)

RabbitMQ

パブリッシュ

ポップ

サブスクライブ(ブロック付き)

New Relic UIでの表示

メッセージキューの操作は、APMのUIのいくつかの場所で見ることができます。

Copyright © 2022 New Relic株式会社。