我想要開始使用ActiveMQ,並運行示例代碼。它歸結爲:ActiveMQ AMQP示例代碼中的超時問題
JmsConnectionFactory factory = new JmsConnectionFactory("amqp://localhost:=5672");
Connection connection = factory.createConnection(user, password);
connection.start();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
destination = session.createQueue("change");
MessageConsumer consumer = session.createConsumer(destination);
while (true) {
Message msg = consumer.receive();
«process»
}
它工作正常,但如果我不爲一兩分鐘發送消息,我得到:
Exception in thread "main" javax.jms.JMSException:
Transport closed due to the peer exceeding our requested idle-timeout
我不知道我期望得到消息的頻率(可能是幾百秒,可能是一天一次)。
是否有一些配置選項,我需要設置,所以永遠不會超時?
什麼是寫客戶端的正確方法?是否有一個很好的理由默認有超時,這意味着我不應該使用這種方法?
阻止這樣的投票對我來說很好。
我正在使用ActiveMQ 5.11.2。我使用activemq console
運行服務器並使用任何默認配置。
你使用什麼經紀人和版本,沒有足夠的信息來幫助 –
抱歉。最新的一切。我會更新。 – Joe