QPID オペレーション ガイド

Edge for Private Cloud バージョン 4.52.02 には、Qpid Broker-J 8.0.6 が付属しています。このページでは、以下について説明します。 メモリとディスクに関する考慮事項は Edge for Private Cloud の apigee-qpidd コンポーネント(Java ベースのブローカーを使用)。 以下のセクションは、特に Apigee の Qpid のユースケースと、Apigee の構成メカニズムを使用して Qpid をチューニングする方法について説明します。

Apigee での Qpid

Apigee では、Qpid は次の 2 つの主要なワークフローで使用されます。

  • アナリティクス
  • 収益化

どちらのワークフローでも、Message Processor によってメッセージが生成されます。 バッチに収集され Qpid に push されます。アナリティクスの場合、メッセージは Qpid-server によって読み取られます。 Monetization の場合は、Rating Server(管理サーバーの一部)によって読み取られます。 読み取られると、バッチ化されたメッセージはバッチ処理されずに取り込まれます。

以降のセクションでは、Google Compute Engine リソースのメモリとディスクの推奨構成について説明します。 Qpid。これらの構成は、アナリティクスまたは 収益化。 デフォルトのバッチサイズが 50 の場合、Qpid の各メッセージは約 100 KB になります。Apigee プロキシがメッセージの変更や追加情報の追加を行えるようにします (分析または収益化)。極端な場合、これにより画像のサイズが大幅に変わることがあります。 単一のメッセージと Qpid 内のバッチメッセージ全体を返します。一般的な そのような場合でも、以下のセクションのメモリとディスクに関する推奨事項があてはまります。 スムーズな動作を実現するために、Qpid に追加の調整が必要になる場合があります。

メモリ

Qpid ブローカーは、オフヒープ メモリとヒープメモリの 2 種類のメモリを使用します。Qpid はメッセージを オフヒープ メモリで、独自の内部タスク、ダイレクト レスポンス、 メッセージをキューやエクスチェンジなどにルーティングできます。ほとんどの場合、Apigee では Qpid ブローカーのオフヒープとヒープメモリの比率は 3:1。

オフヒープ メモリ内のメッセージはディスク上に保持されます。また、VM の総使用量が オフヒープ メモリが特定のしきい値を超えた場合、Qpid はメッセージをディスクにオーバーフローするように設定されます。

デフォルトでは、Apigee は使用可能なメモリに基づいて Qpid Broker のヒープメモリとオフヒープメモリを計算します。 作成されます。Apigee のスクリプトには、Qpid Broker のヒープと合計で 4 GB のソフトリミットがあります。 オフヒープ メモリです。これらの制限をオーバーライドする場合は、2 つの構成を使用します。 Qpid のヒープとオフヒープ メモリに独自の値を設定します。

  • ヒープメモリの構成: bin_run-qpidd_qpid.run.jvm.max_vm_heap=1024m
  • オフヒープ メモリの構成: bin_run-qpidd_qpid.run.jvm.max_direct_memory_size=3072m

詳しくは、 Qpid 構成を変更する方法 構成をオーバーライドする方法を ご覧ください

詳細については、次をご覧ください: <ph type="x-smartling-placeholder"></ph> メモリに関する Apache Qpid リファレンス

ディスク

Qpid Broker のデータ ディレクトリは $APIGEE_ROOT/data/apigee-qpidd です。 Qpid ブローカーのログは $APIGEE_ROOT/var/log/apigee-qpidd に保存されます。

データ ディレクトリをホストするファイル システムのパフォーマンスは、 ブローカー全体最高のパフォーマンスを得るには、低レイテンシで 他のアプリケーションでは使われません。

Qpid ブローカーは、メッセージをデータ ディレクトリに保持します。デフォルトでは、ブローカーは 最大 80% に達するまで待機します。この設定は 各 Qpid ノードで以下の例に示す構成をオーバーライドして、しきい値を低くできます。

bin_run-qpidd_qpid.store.filesystem.maxUsagePercent=60

この例では、基盤となるファイル システムが 60% になると、ブローカーは新しいメッセージを拒否します。 。

Qpid の設定を変更する方法

Qpid の設定を変更するには:

  1. 次のファイルを作成または編集します。
    $APIGEE_ROOT/customer/application/qpidd.properties
  2. 必要に応じて、構成を追加または削除または変更します。 たとえば、Qpid Broker の最大ヒープメモリを 6 GB に変更するには、次の構成を追加します。 次のように指定します。
    bin_run-qpidd_qpid.run.jvm.max_vm_heap=6144M
  3. 変更を保存し、apigee ユーザーがファイルを所有し、読み取り可能であることを確認します。
    chown apigee:apigee $APIGEE_ROOT/customer/application/qpidd.properties
  4. qpidd プロセスを再起動します。
    apigee-service apigee-qpidd の再起動