メッセージング・エンジンによって使用されるメモリー・バッファーの制御
各メッセージング・エンジンは、メッセージとメッセージ関連データを持つ 2 つのメモリー・バッファーを管理します。この 2 つのバッファーのサイズを設定するプロパティーを調整することによって、メッセージング・エンジンとそのデータ・ストアとの対話を向上させることができます。
このタスクについて
- sib.msgstore.discardableDataBufferSize
- 「サービスの品質」属性がベスト・エフォート非パーシスタントであるデータを格納するためにメッセージング・エンジンが使用するデータ・バッファーのバイト単位のサイズです。 このデフォルト値は、320000 で、約 320 キロバイトです。
- 廃棄可能なデータ・バッファーには、「サービスの品質」属性がベスト・エフォート非パーシスタントであるすべてのデータが格納されます。 このデータには、アクティブ・トランザクションに関係するデータと、メッセージング・エンジンが廃棄もコンシュームもしなかった、その他のベスト・エフォート非パーシスタント・データの両方が含まれています。 メッセージング・エンジンはこのデータ全体をこのメモリー・バッファー内に保持し、このデータをデータ・ストアに書き込むことはありません。 メッセージング・エンジンが廃棄可能なデータ・バッファーにデータを追加すると (例えば、 メッセージング・エンジンがクライアントからベスト・エフォート非パーシスタント・メッセージを受信すると)、 メッセージング・エンジンは、スペースを空けるためにバッファー内の既存データを廃棄することがあります。 メッセージング・エンジンはアクティブ・トランザクションに関係のないデータだけを廃棄することができます。この動作により、メッセージング・エンジンはベスト・エフォート非パーシスタント・メッセージを破棄できるようになります。
- 廃棄可能なデータ・バッファーのサイズを増やすと、メッセージング・エンジンがメッセージの廃棄を開始する前に、より多くのベスト・エフォート非パーシスタント・データが処理されるようになります。
- sib.msgstore.cachedDataBufferSize
- メッセージング・エンジンが使用するデータ・バッファーのバイト単位のサイズです。 このバッファーには、「サービスの品質」属性がベスト・エフォート非パーシスタントより良く、かつ、データ・ストアに保持されているデータが格納されます。 このデフォルト値は、320000 で、約 320 キロバイトです。
- キャッシュ・データ・バッファーの 目的は、キャッシングしなければメッセージング・エンジンが データ・ストアから読み込まなければならない可能性のあるデータを、 メモリーにキャッシングすることで、メッセージング・エンジン のパフォーマンスを最適化することです。データをデータ・ストアに書き込み、データ・ストアから読み取るときに、メッセージング・エンジンは そのデータをキャッシュ・データ・バッファーに追加しようとします。メッセージング・エンジンはスペースを空けるため、既にバッファー内にあるデータを破棄する可能性があります。
- sib.msgstore.transactionSendLimit
- メッセージング・エンジンが各トランザクションに含めるオペレーションの最大数。例えば、各 JMS の送信または受信は、トランザクション送信制限に従ってカウントされるオペレーションです。デフォルト値は 100 です。
重要: メッセージング・エンジンは、メモリー・バッファーに保持するデータを概算で管理します。どちらの DataBufferSize プロパティーも、メッセージング・エンジンが JVM ヒープで消費する正確なメモリー量の指標を示しません。メッセージング・エンジンは DataBufferSize プロパティーが示すよりも、相当多くのヒープ・ストレージを消費する可能性があります。
メッセージング・エンジンのプロパティーを設定してそのデータ・ストアとの対話状況を改善するには、管理コンソールを使用して以下のステップを実行します。
手順
- ナビゲーション・ペインで、「 」をクリックします。
- 設定するプロパティーの名前を入力します。
- プロパティーに設定する値を入力します。
- 「OK」をクリックします。
- 変更をマスター構成に保存します。
次のタスク
要確認: これらのプロパティーのいずれかを変更した場合、新しい値は、メッセージング・エンジンを再始動するまで有効にはなりません。