专栏名称: 高可用架构
高可用架构公众号。
今天看啥  ›  专栏  ›  高可用架构

怎么在业务团队写好发消息的代码?

高可用架构  · 公众号  · 架构  · 2024-07-05 07:35

文章预览

遇到的问题 做技术的同学,尤其是业务开发同学都是经常和消息打交道的,大家也都喜欢研究像MetaQ这种消息中间件的一些实现代码。作为一曾经的业务开发同学(目前在负责稳定性),深知要在业务团队写好发消息的代码,也绝非易事。 曾经我是交易订单团队的一名开发,我遇到了下面的一个问题: try { transactionTemplate.start(); // 位置1 orderManager.createOrder(order); // 位置2 messageProducer.send(buildOrderCreatedMsg(order)); // 发送订单创建成功的消息。 transactionTemplate.commit(); // 位置3 } catch ( Exception e) { transactionTemplate.rollback(); } 我需要发送订单创建成功的消息,目前我是在位置2上面发送的消息,不过我在纠结,我为什么不是在位置1或者位置3上发送消息呢? 谁才是完美的答案 如果这段代码在运行过程中没有任何意外的行为,DB操作总是很快成功 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览