【问题标题】:ActiveMQ Camel messagesActiveMQ 骆驼消息
【发布时间】:2013-01-24 04:33:46
【问题描述】:

我正在尝试使用 activemq 和骆驼部署应用程序,当我对我的 tomcat 服务器进行分层时,我在控制台上收到所有可疑消息,即使在 tye 代理的队列中没有消息,错误消息也是

09:56:27.769 [Camel (eventProcessorCamelContext) thread #2 - JmsConsumer[events]] DEBUG o.a.activemq.ActiveMQMessageConsumer - remove: ID:LT-HP-2012907-53495-1360230974137-0:7:1:5, lastDeliveredSequenceId:0
09:56:27.769 [Camel (eventProcessorCamelContext) thread #2 - JmsConsumer[events]] DEBUG org.apache.activemq.ActiveMQSession - ID:LT-HP-xxxxxxxxxx-0:7:1 Transaction Commit :null
09:56:27.769 [Camel (eventProcessorCamelContext) thread #2 - JmsConsumer[events]] DEBUG org.apache.activemq.ActiveMQSession - ID:LT-HP-xxxxxxxx:1 Transaction Rollback
09:56:27.770 [Camel (eventProcessorCamelContext) thread #1 - JmsConsumer[events]] DEBUG o.a.activemq.ActiveMQMessageConsumer - remove: ID:LT-HP-2012907-53495-1360230974137-0:6:1:5, lastDeliveredSequenceId:0
09:56:27.770 [Camel (eventProcessorCamelContext) thread #1 - JmsConsumer[events]] DEBUG org.apache.activemq.ActiveMQSession - ID:LT-HP-xxxxxxxxx:6:1 Transaction Commit :null
09:56:27.770 [Camel (eventProcessorCamelContext) thread #1 - JmsConsumer[events]] DEBUG org.apache.activemq.ActiveMQSession - ID:LT-HP-xxxxxxxxx:6:1 Transaction Rollback

Transaction Commit :null Transaction Rollback ***正如您在调试消息中看到的,队列中没有消息,我仍然收到调试消息为 Transaction commit:null 和 Transaction Rollback .是预期的吗?为什么 ActiveMQ 在没有消息时尝试提交 null 这是预期的还是我做错了什么

【问题讨论】:

标签: activemq apache-camel


【解决方案1】:

那是详细的日志记录。

Camel 在从 ActiveMQ 读取事务性消息时使用 Spring DMLC。

基本上要做的事情是这样的(伪代码,过于简化):

begin transaction()
receive()
.. handle message 
commit()

如果这让您感到困扰,请关闭调试日志记录。

【讨论】:

  • 所以即使没有消息,带有 DMLC 的骆驼也开始事务并提交?
  • 如果你有会话事务,是的。 Camel 需要在读取之前启动事务 - 并知道队列中是否有消息 - 然后提交
猜你喜欢
  • 2013-08-10
  • 2015-05-05
  • 1970-01-01
  • 1970-01-01
  • 2015-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多