第8章 メッセージの永続化およびページング
AMQ Broker 7 は、メッセージジャーナルまたは JDBC ストアのいずれかで永続性を提供します。ブローカーがメッセージを保管しそれらをディスクにページングする方法は AMQ 6 とは異なります。また、メッセージの永続化の設定に使用する設定プロパティーが変更されました。
8.1. メッセージ永続化の変更
AMQ Broker 7 は AMQ 6 とは異なるタイプのメッセージジャーナルを使用し、ジャーナルインデックスを使用しません。
AMQ 6 では、メッセージストアに KahaDB が使用され、メッセージジャーナルインデックスを保持し、ジャーナル内の各メッセージの位置を追跡しました。このインデックスにより、ブローカーはジャーナルからページングされたメッセージをバッチでプルし、キャッシュに配置できるました。
デフォルトでは、AMQ Broker 7 はブローカーがメッセージをディスパッチできるインメモリーメッセージジャーナルを使用します。そのため、AMQ Broker 7 はメッセージジャーナルインデックスを使用しません。ブローカーインスタンスがメモリー不足になると、メッセージはブローカーに到達するものの、キューに置かれる前にページングされます。これらのメッセージページファイルは、到達したのと同じ順序でディスクに順次保存されます。次に、ブローカーでメモリーが解放されると、メッセージはページファイルからブローカーのジャーナルに移動します。ジャーナルは順番に読み取られるため、ジャーナルにメッセージのインデックスを保持する必要はありません。
さらに、AMQ Broker 7 では、AMQ 6 では利用できなかった別の JDBC ベースのメッセージジャーナルオプションもあります。
AMQ Broker 7 メッセージジャーナルは、以下の共有ファイルシステムをサポートします。
- NFSv4
- GFS2
関連情報
- デフォルトのインメモリーメッセージジャーナルに関する詳細は、『Configuring AMQ Broker』の「About Journal-based Persistence」を参照してください。
- 新しい JDBC ベースの永続化オプションの詳細は、『Configuring AMQ Broker』の「Configuring JDBC Persistence」を参照してください。