事务分组是什么
事务分组
seata的资源逻辑,可以按微服务的需要,在应用程序(客户端)对自行定义事务分组,每组取一个名字。
集群
seata-server服务端一个或多个节点组成的集群cluster。应用程序(客户端)使用时需要指定事务逻辑分组与Seata服务端集群的映射关系。
配置参数
- seata.tx-service-group 事务分组配置项
- service.vgroupMapping.[事务分组配置项] 拼接事务分组。配置TC集群的名称,集成nacos之后,直接从配置的DataId中获取此配置
客户端查找集群的过程
- 读取配置 通过NacosConfiguration远程读取seata配置参数
- 获取事务分组(服务启动时加载配置) spring/springboot可配置在yml、properties中,seata.tx-service-group对应值"account-service-tx-group"即为事务分组名,若不配置则默认以:spring.application.name值+"-seata-service-group"拼接后的字符串作为分组名
- 查找TC集群名 拿到事务分组名"account-service_tx_group"拼接成"service.vgroupMapping.account-service-tx-group"从配置中心查找到TC集群名clusterName为"default"
- 查找TC服务 根据serverAddr和namespace以及clusterName在注册中心找到真实TC服务列表