私はこの擬似コードをすれば、私は、ActiveMQの(5.5)に気づい:activemqの消費者は「常にキャッシュする」ようですか?
connection = new ActiveMQConnectionFactory(...)
connection.start()
session = connection.createSession(transacted=true, Session.AUTO_ACKNOWLEDGE)
destination = session.createQueue(...)
consumer = session.createConsumer(destination)
私も1を要求する前に、消費者は、キューから要素をつかむために表示されていること。 WireFormat.cacheEnabled = falseを指定しても、
デフォルトで、消費者が「要素をつかむ」ことを防ぐ方法はありますか?
あなたの接続文字列はどのようなものが見えますか?プリフェッチが原因です。 –
?wireFormat.maxInactivityDuration = 0&wireFormat.cacheEnabled = false – rogerdpack
'&jms.prefetchPolicy.all = 0'を追加して、それが停止するかどうかを確認してください。プリフェッチが必要ではないことを認識しておいてください。http://activemq.apache.org/what-is-the-prefetch-limit-for.html –