1

指定された時間非アクティブなキューからすべてのメッセージを自動的に削除したい (その時間に新しいメッセージが到着しなかった)。

here で説明されているように、コードからキューを明示的に空にしたり、パージを明示的に呼び出したりしたくありません。

ここで説明する構成も、空のキューのみを自動的に削除し、私のキューは空ではないため、私の場合には適切ではありません。

そのタスクを自動的に実行できる既知の ActiveMQ 構成はありますか?

4

1 に答える 1

3

私はそのような要件を持ったことがなく、そのような機能がactivemqに存在するかどうかはわかりませんが、興味があるかもしれない2つのオプションがあります:

1)関連性がなくなったために非アクティブなキューのメッセージをパージする場合は、各メッセージに存続時間を設定できます(プロデューサー側の setTimeToLive() メソッド)

2) 正確な動作が必要な場合は、独自のプラグインを開発できます。実際、activemq ブローカーはかなり拡張可能です (参照: http://activemq.apache.org/developing-plugins.html ) 。

それが役に立てば幸い。

于 2016-05-06T15:57:23.890 に答える