-
Notifications
You must be signed in to change notification settings - Fork 18
Microservice
目前的微服务体系主流以SpringCloud为主,目前又分为三个流派SpringCloudNetflex 、SpringCloudAlibba以及近期开源的Spring-Cloud-Tencent 其他的还有dubbo和grpc、brpc等 。
Spring Cloud,是一系列框架的集合,其基于Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,构建了服务治理(发现注册)、配置中心、消息总线、负载均衡、断路器、数据监控、分布式会话和集群状态管理等功能,为我们提供一整套企业级分布式云应用的完美解决方案。 Spring Cloud 具有特性,以及适用于哪些场景等包含:
- Distributed/versioned configuration,基于版本的分布式配置管理
- Service registration and discovery,服务注册与发现
- Routing,路由
- Service-to-service calls,服务之间调用(依赖)
- Load balancing,负载均衡
- Circuit Breakers,断路器
- Global locks,全局锁(分布式锁)
- Leadership election and cluster state,选主以及集群状态管理
- Distributed messaging,分布式消息服务
Spring Cloud Tencent 是腾讯开源的一站式微服务解决方案。Spring Cloud Tencent 实现了 Spring Cloud 标准微服务 SPI,开发者可以基于 Spring Cloud Tencent 快速开发 Spring Cloud 微服务架构应用。Spring Cloud Tencent 的核心依托腾讯开源的一站式服务发现与治理平台 Polarismesh ,实现各种分布式微服务场景。
Spring Cloud Tencent提供的能力包括但不限于:

TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
解决方案有几种:使用RocketMQ的事务消息、分布式事务中间件(如seta)
seata 是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。 官网地址: http://seata.io/zh-cn/ 分布式事务处理过程的一ID+三组件模型:
Transaction ID XID : 全局唯一的ID
- Transaction Coordinator(TC)-事务协调者 : 维护全局和分支事务的状态,驱动全局事务提交或回滚。
- Transaction Manager(TM)-事务管理器 : 定义全局事务的范围:开始全局事务、提交或回滚全局事务。
- Resource Manager(RM)-资源管理器 : 管理分支事务处理的资源,与TC交谈以注册分支事务和报告分支事务的状态,并驱动分支事务提交或回滚。

- TM向TC申请开启一个全局事务,全局事务创建成功并生成一个全局唯一的XID
- XID在微服务调用链路的上下文中传播
- RM向TC注册分支事务,将其纳入XID对应全局事务的管辖
- TM向TC发起针对XID的全局提交或回滚决议
- TC调度XID下管辖的全部分支事务完成提交或回滚请求
发布说明:https://github.com/seata/seata/releases
TODO
目前使用最多的解决方案是 sharding-jdbc
TODO
TODO
TODO
TODO
TODO:ELK
TODO
TODO 云原生,后面单独开一页进行梳理