微服务中分布式事务会有什么问题?
随着微服务架构的出现,我们正在失去数据库的ACID特性。事务现在可以跨越多个微服务,因此可以跨越多个数据库。我们将面临的关键问题是:
如何保持事务的原子性?
事务的原子性指的是要么所有步骤都成功,要么都失败。在以上示例中,如果InventoryMicroservice微服务中预留物品失败,如何让OderMicroservice中的订单处理事务回滚。
如何处理当前请求?
如果其中的一个微服务中的一个对象已经持久化到数据库,同时另一个请求读取了同一个对象。服务该回退到旧数据还是新的?在上面的例子中,一旦OrderMicroservice完成了,InventoryMicroservice现在执行更新,用户请求订单数是否包含当前这个订单?
如今的系统是为故障而设计的,面临的一些主要问题就是处理分布式事务。那么为了更好地解决这些问题,小编在这里分享一份阿里内网M8级别的“分布式到微服务”解密宝典!
上面是笔记的目录内容!由于篇幅限制,下面只给大家展示这份笔记的部分内容截图,想要获取完整资料的朋友,关注转发后点我主页私信【学习】即可获取哦!
好了,笔记内容就展示到这里了,想要获取完整资料的朋友,关注转发后点我主页私信【学习】即可获取哦!