0

ActiveMQ ブローカーが未使用のトピックをメモリから削除しないという問題が発生しています。

現在、私たちのシステムは、実行時に名前が指定された多くのトピックを動的に生成するように設計されています。これらのトピックは、アプリケーションの存続期間中存在し、その後、トピックのすべてのコンシューマーとプロデューサーがサブスクリプションを解除します。ただし、activemq ブローカーは、これらのトピックをリストから削除しません (Web コンソールから表示可能)。

デフォルトの構成ファイル ブローカーを編集して、persistent="false" および advisorySupport="false" を設定しました。私には、これでブローカーからトピックが削除されるはずですが、明らかに何かが欠けています。

誰でも助けることができますか?

4

2 に答える 2

1

ブローカーはデフォルトでは宛先を削除しませんが、ポリシーを構成することでこの動作を有効にすることができます。AMQ Web サイトでこのヘルプ トピックを参照してください。

于 2011-05-12T21:23:54.070 に答える
0

問題が見つかりました。問題は、アプリケーションが実行していたことではなく、ブローカー構成にありました。私は指定しなければなりませんでした

<policyEntry topic=">" producerFlowControl="true" memoryLimit="1mb" gcInactiveDestinations="true" inactiveTimoutBeforeGC="30000">

ブローカーのポリシーマップ。どうしてこれを逃したのかわかりません。

于 2011-05-13T12:32:34.570 に答える