我知道有很多关于message driven beans
交易的问题,但是我无法找到(我认为)必须是常见情况的答案。
我有一个可以调用来发送电子邮件的服务。当它被调用时,它会在表中创建电子邮件记录,然后将 ID 推送到ActiveMQ
进行处理。到目前为止一切都很好,但是队列会选择 ID 并尝试在事务提交之前发送电子邮件,并且电子邮件不是数据库中的。
服务本身是事务性的,但它也可能是更大事务的一部分。
处理这种情况的最佳方法是什么?我现在正在使用 Thread.sleep Consumer
;然而这感觉很脏......
(我没有使用弹簧)