1

JMS 队列中是否有任何事务隔离级别可用,如JDBC中?

更具体地说,在过渡模式下,当客户端消费一条消息但尚未提交时,下一个客户端是否会消费下一条消息?如果第一个客户端回滚转换,即消息放置在队列中的位置,我认为它将被放置在之前的位置。

4

2 回答 2

4

简短的回答:没有

JMS 发送要么是事务性的,要么不是事务性的,这意味着当发送者事务提交或立即(即使客户端稍后发送事务回滚)时,消息是“提交的”(对代理和 MDB 可见)。

JMS 接收也有简单的开/关事务:当消息被 MDB 拾取(非事务性)或 MDB 无异常返回(事务性)时,消息被标记为已接收。

于 2012-11-21T09:18:51.787 回答
0

事务隔离是关于数据库表更改的可见性。JMS 消息是不可变的,您发送一次就无法更改。

于 2012-11-21T09:34:51.683 回答