8.3. メッセージ永続化設定プロパティーの変更

AMQ 6 および AMQ Broker 7 はどちらも、ブローカーがメッセージを永続化する方法を制御する複数の設定プロパティーを提供します。ここでは、AMQ 6 KahaDB ジャーナルの設定プロパティーを、AMQ Broker 7 のインメモリーメッセージジャーナルの同等のプロパティーと比較します。

インメモリーメッセージジャーナルの各メッセージ永続化設定プロパティーの詳細は、以下を参照してください。

8.3.1. ジャーナルサイズおよび管理

以下の表は、AMQ 6 のジャーナルサイズおよび管理設定プロパティーを AMQ Broker 7 の同等のプロパティーと比較します。

設定の対象AMQ 6 の場合AMQ Broker 7 の場合

使用されていないデータログをクリーンアップする間隔

cleanupInterval

デフォルトは 30000 ミリ秒です。

同等のものはありません。AMQ Broker 7 では、プールサイズを超えるジャーナルファイルは使用されなくなりました。

コンパクションがトリガーされる前に他のファイルをクリーンアップせずに完了する必要のあるメッセージストア GC サイクルの数

compactAcksAfterNoGC

同等のものはありません。AMQ Broker 7 では、コンパクションは特定のレコードタイプとは関係ありません。

メッセージストアがまだ増大する間にコンパクションを実行するべきかどうか、または増大が止まった時にのみ実行するべきか。

compactAcksIgnoresStoreGrowth

デフォルトは false です。

同等のものはありません。

コンパクション前にブローカーに格納できるジャーナルファイルの最小数。

同等のものはありません。

<journal-compact-min-files>

デフォルトは 10 です。この値を 0 に設定すると、コンパクションは無効になります。

コンパクションの開始前に達するしきい値

同等のものはありません。

<journal-compact-percentage>

デフォルトは 30% です。このパーセンテージ未満がライブデータと見なされると、コンパクションが開始されます。

メッセージストアのデータファイルを保持する最上位フォルダーへのパス

directory

AMQ Broker 7 には、ジャーナルのタイプごとに個別のディレクトリーがあります。

  • <journal-directory>: デフォルトは /data/journal です。
  • <bindings-directory>: デフォルトは /data/bindings です。
  • <paging-directory>: デフォルトは /data/paging です。
  • <large-message-directory>: デフォルトは /data/large-messages です。

バインディングディレクトリーがまだ存在しない場合に自動的に作成されるかどうか

同等のものはありません。

<create-bindings-dir>

デフォルトは true です。

ジャーナルディレクトリーがまだ存在しない場合に自動的に作成されるかどうか

同等のものはありません。

<create-journal-dir>

デフォルトは true です。

メッセージストアがメッセージの確認応答のみが含まれる古いジャーナルログファイルを定期的に圧縮するかどうか

enableAckCompaction

同等のものはありません。

データログファイルの最大サイズ

journalMaxFileLength

デフォルトは 32 MB です。

<journal-file-size>

デフォルトは 10485760 バイト (10 MiB) です。

新しいジャーナルファイルが必要な場合に、ブローカーがジャーナルファイルの事前割り当てに使用するポリシー

preallocationStrategy

デフォルトは sparse_file です。

同等のものはありません。デフォルトでは、事前に割り当てられたジャーナルファイルは通常ゼロで埋められますが、ファイルシステムによって異なります。

ブローカーがジャーナルファイルの事前割り当てに使用するポリシー

preallocationScope

デフォルトは entire_journal です。

ブローカーインスタンスの起動時に、AMQ Broker 7 は <journal-min-files> で指定されたジャーナルファイルを自動的に事前割り当てします。

ジャーナルタイプ (NIO または AIO のいずれか)

同等のものはありません。

<journal-type>

NIO (Java NIO ジャーナル) または ASYNCIO (Linux 非同期 I/O ジャーナル) のいずれかを選択できます。

ジャーナルが保持するファイルの最小数

同等のものはありません。

<journal-min-files>

ファイルを開放する際にブローカーが保持するジャーナルファイルの数

同等のものはありません。

<journal-pool-files>

デフォルトは -1 で、一旦作成されたらブローカーインスタンスはジャーナルのファイルを決して削除しないことを意味します。