1
我见过的聚合器的代码,并据我了解,它下面的OPS:如果组可以释放事务和聚合
增加消息组 则: 完整的组,并将其发送到输出/应答通道 如果(到期团) 删除组和消息从消息存储 否则只删除
这里我需要一些ACID事务支持做全有或全无的消息
,但阅读文档后,我不能”不知道该怎么做。您能否告诉我,如果可能,如果是,我该如何实现?在此先感谢
方面 古斯曼
我见过的聚合器的代码,并据我了解,它下面的OPS:如果组可以释放事务和聚合
增加消息组 则: 完整的组,并将其发送到输出/应答通道 如果(到期团) 删除组和消息从消息存储 否则只删除
这里我需要一些ACID事务支持做全有或全无的消息
,但阅读文档后,我不能”不知道该怎么做。您能否告诉我,如果可能,如果是,我该如何实现?在此先感谢
方面 古斯曼
可以使入站(直接)通道汇聚事务...
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="send" />
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="aggTx" expression="execution(* *.send(..)) && bean(toAggChannel)" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="aggTx" />
</aop:config>
将处理正常分娩和释放。
若要使exipiring部分组交易,请使用MessageGroupStoreReaper
并以类似的方式使MessageGroupStore.expireMessageGroups()
方法事务性。
使用group-timeout
或group-timeout-expression
时,您当前无法在交易中过期部分组。
你想在交易范围内做什么?所有的增加和释放?或者是其他东西。 – 2014-09-04 15:54:45
添加一条消息并删除发布后组中的所有消息 – gllambi 2014-09-04 16:08:31