7.4. マルチキャストアドレスでのメモリー使用量について


マルチキャストのキューがバインドされているアドレスへメッセージが転送されると、メッセージのコピーはメモリー内に 1 つだけ存在します。各キューにはメッセージへの 参照 のみがあります。このため、関連付けられたメモリーは、メッセージを参照する すべて のキューがメッセージを配信した後にのみ解放されます。

このような状況では、コンシューマーの速度が遅いと、アドレス全体がパフォーマンスに悪影響を及ぼす可能性があります。

たとえば、以下のシナリオについて考えてみましょう。

  • アドレスには、マルチキャストルーティングタイプを使用する 10 個のキューがあります。
  • 低速なコンシューマーにより、キューの 1 つがメッセージを配信しません。他の 9 つのキューは引き続きメッセージの配信を継続し、空になっています。
  • メッセージはアドレスに到達し続けます。低速なコンシューマーを持つキューはメッセージへの参照を蓄積し続け、ブローカーはメッセージをメモリーに保持します。
  • アドレスの最大サイズに達すると、ブローカーはメッセージのページングを開始します。

このシナリオでは、低速なコンシューマーが 1 つあるため、すべて のキューのコンシューマーはページシステムからメッセージを消費することが強制され、追加の IO が必要になります。

関連情報

  • ブローカーとプロデューサーとコンシューマー間のデータのフローを調整するようにフロー制御を設定する方法は、AMQ Core Protocol JMS ドキュメントの Flow control を参照してください。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.