JMS之——ActiveMQ支持两种事务
来源:互联网 发布:网络体系结构的定义 编辑:程序博客网 时间:2024/06/07 05:52
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/75246853
ActiveMQ有支持两种事务,
- JMS transactions - the commit() / rollback() methods on a Session (which is like doing commit() / rollback() on a JDBC connection)
- XA Transactions - where the XASession acts as an XAResource by communicating with the Message Broker, rather like a JDBC Connection takes place in an XA transaction by communicating with the database.
在支持事务的session中,producer发送message时在message中带有transaction ID。broker收到message后判断是否有transaction ID,如果有就把message保存在transaction store中,等待commit或者rollback消息。所以ActiveMq的事务是针对broker而不是producer的,不管session是否commit,broker都会收到message。
如果producer发送模式选择了persistent,那么message过期后会进入死亡队列。在message进入死亡队列之前,ActiveMQ会删除message中的transaction ID,这样过期的message就不在事务中了,不会保存在transaction store中,会直接进入死亡队列。具体删除transaction ID的地方是在
org.apache.activemq.util.BrokerSupport的doResend,将transaction ID保存在了originalTransactionID中,删除了transaction ID
阅读全文
1 0
- JMS之——ActiveMQ支持两种事务
- ActiveMQ有支持两种事务
- ActiveMQ有支持两种事务
- ActiveMQ有支持两种事务
- JMS——Spring+ActiveMQ
- JMS实战——ActiveMQ
- ActiveMQ系列—JMS规范
- JMS入门——开发起步之ActiveMQ
- jmeter之——jms压测(activemq)
- JMS之——ActiveMQ的安装和启动
- JMS之——Spring与ActiveMQ整合案例
- JMS之——ActiveMQ消息持久化
- JMS之——ActiveMQ高可用+负载均衡集群
- JMS之ActiveMQ
- JMS之ActiveMQ初试
- 浅析jms之ActiveMQ
- JMS 之 ActiveMQ 简介
- JMS 之 ActiveMQ
- ACM 树的递归 Not so Mobile & The Falling Leaves
- 最长公共子序列LCS和最长子串SLCS
- https请求单向认证
- 使用远程线程注入的三个函数CreateRemoteThread、NtCreateThreadEx、RtlCreateUserThread
- CODEV和zemax tilt反射镜建立和对比3
- JMS之——ActiveMQ支持两种事务
- Recyclerview的一些个人理解与使用(七)Recyclerview的嵌套与增加删除
- php实现分页显示功能
- Deep Learning深入浅出
- (二)跑马灯的两种实现方式
- 浅谈Redis
- STL学习笔记-容器
- 第4.1章 scrapy之web工程
- 0630工作tips