最近公司再接入分布式事务servicecomb-pack,然后自己做了一个简单的了解,分布式事务整体分为3个模块即协调者alpha、注入到微服务实例中的omega、alpha与omega交互协议,下表为各个模块的相应功能介绍
servicecomb-pack | 总模块 | 模块名称 | 功能描述 | |
alpha | alpha-benchmark | alpha性能相关数据测试工具 | ||
alpha-core | alpha处理事务核心包 | |||
alpha-fsm | 事务状态机转换包 | |||
alpha-server | alpha对外提供的web服务接口以及接收omega上报的数据 | |||
alpha-spring-cloud-starter-consul | 监听Grpc事件,并且实例化consul实例数据 | |||
alpha-spring-cloud-starter-eureka | 监听Grpc事件,并且实例化eureka实例数据 | |||
alpha-spring-cloud-starter-nacos | 监听Grpc事件,并且实例化nacos实例数据 | |||
alpha-spring-cloud-starter-zookeeper | 监听Grpc事件,并且实例化zookeeper实例数据 | |||
alpha-ui | alpha对外提供的web查询展示接口 | |||
omega | omega-connector | 与alpha进行通信模块,包括saga与tcc2 种模式 | ||
omega-context | 开启事务的注解、事务上下文 | |||
omega-format | 与alpha交互时的序列化协议 | |||
omega-spring-cloud-consul-starter | 与第三方监控consul接入的starter | |||
omega-spring-cloud-eureka-starter | 与第三方监控eureka接入的starter | |||
omeag-spring-cloud-nacos-starter | 与第三方监控macps接入的starter | |||
omeag-spring-cloud-zookeeper-starter | 与第三方监控zookeeper接入的starter | |||
omega-spring-starter | 创建一些omega 相关的bean,如事务上下文、协调上下文、回滚、alpha集群上下文等bean | |||
omega-spring-tx | 事务注解的参数检查 | |||
omega-transaction | 事务的具体实现,包括开启事务、事务传递、事务回滚、事务结束等 | |||
omega-transport | omega-transport-dubbo | dubbo框架接入分布式事务消费方和提供方的过滤器,主要是处理dubbo框架分布式事务ID的上下文传递配置 | ||
omega-transport-feign | springcloud框架接入分布式事务,事务ID的上下文传递配置 | |||
omega-transport-hystrix | 接入hystrix 熔断相关的配置注册 | |||
omega-transport-resttemplate | rest接口事务上下文传递事务ID,添加拦截器配置 | |||
omega-transport-servicecomb | ServiceComb微服务框架上下文事务ID传递,通过添加Chassis的Handle | |||
其他 | demo | dubbo、spring等接入例子 | ||
pack-common | 公共配置,例如环境,事务类型,状态等 | |||
pack-contracts | Grpc协议 | |||
persistence | 持久层jpa数据库配置类 | |||
web | saga web端启动类 |