您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在两个微服务之间进行两阶段提交(Spring Boot)?

如何在两个微服务之间进行两阶段提交(Spring Boot)?

您无法在分布式环境中的微服务中实现传统的交易系统。

您应该使用 技术,由于它们是原子的,因此您将获得在整体系统中实现事务或2PC之类的东西。

其他可能的方式是 ,我认为链接输入正在使用这种方式,但是它有其优点和缺点。例如,不同数据库的二进制日志不同,并且同一类型数据库中的事件在不同版本之间也存在差异。

我建议您在事件存储中使用事件源+ CQRS和字符串事件,然后在微服务A和B之间转移多个事件并在每个步骤中更新域 ***

建议您使用诸如 , 或 类的消息代理在不同的微服务之间发送基于事件的事件,并将它们放入诸如MysqL或其他系统的事件存储中。

除了模仿事务之外,这种方式的另一个好处是您将拥有完整的 。

Java 2022/1/1 18:23:48 有460人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶