seata使用配置中心可以方便对seata配置的修改和管理。那么为啥还需要注册中心呢?
我的理解如下:
首先seata是为了解决分布式事务的难题而创建的。比如你要完成一个业务逻辑,你需要先调用a应用的方法,然后再调用b应用的方法,完成整个业务逻辑。那么此时这两个分支事务是不是应该要么一起成功,要么一起失败。seata就可以解决这种问题,使用全局事务管理不同分支事务。
那么seata就需要知道有哪些TM RM来参与,比如你的分支事务是哪个应用(TM),对于哪个数据库的(RM)。而每个应用又可能有多个节点,一笔请求到底走到了什么应用、什么节点,对应的什么ip,seata是需要知道的,这些信息都是跟注册中心相关的,所以需要注册中心。(注册中心是负载均衡的 当一个应用有多个节点的时候 你事务发送的请求的ip可能会不一样)
Seata为什么需要注册中心
于 2024-04-19 16:23:47 首次发布