SpringCloudAlibaba
最流行的微服务框架
简介

Nacos服务注册与配置中心
Nacos = Eureka + Config + Bus
下载安装
下载**nacos1.2.1版本**
centos启动
1 | |
访问
1 | |
注册服务
nacos自带负载均衡,整合了Ribbon
父工程pom
1 | |
子工程pom
1 | |
yml
1 | |
启动类
1 | |
nacos切换AP和CP

配置中心

pom
1 | |
boostrap.yml
1 | |
application.yml
1 | |
启动类
1 | |
业务类
1 | |
配置Id规则
prefix默认为spring.application.name的值
spring.profile.active既为当前环境对应的profile,可以通过配置项spring.profile.active
file-exetension为配置内容的数据格式,可以通过配置项spring.cloud.nacos.config.file-extension配置
1 | |

分类配置

DataID方案
指定spring.profile.active和配置文件的DataID来使不同环境下读取不同的配置

Group方案


NameSpace方案


Nacos集群
切换到Mysql数据库
nacos默认自带的是嵌入式数据库derby

切换数据源

application文件添加以下内容
1 | |
配置cluster文件


修改startup.sh脚本


使用新命令启动
1 | |
配置Nginx

添加配置
1 | |

通过nginx访问nacos集群
1 | |
配置服务进集群
1 | |
Seata分布式事务
简介
XID
全局事务唯一IDTC - 事务协调者
维护全局和分支事务的状态,驱动全局事务提交或回滚。TM - 事务管理器
定义全局事务的范围:开始全局事务、提交或回滚全局事务。RM - 资源管理器
管理分支事务处理的资源,与TC交谈以注册分支事务和报告分支事务的状态,并驱动分支事务提交或回滚。
处理流程
- TM向TC申请开启一个全局事务,全局事务创建成功并创建生成一个全局唯一的XID
- XID在微服务调用链路的上下文中传播
- RM向TC注册支事务,将其纳入XID对应全局事务的管辖
- TM向TC发起针对XID的全局提交或回滚决议
- TC调度XID下管辖的全部分支事务完成提交或回滚请求

使用
修改file.conf文件

修改registry文件

添加数据库seata,运行sql脚本
1 | |
在需要使用seata的数据库中增加undo.log表
1 | |
java的pom中引入
1 | |
yml文件配置
1 | |
添加file.conf和register.conf配置文件到resource中
1 | |
1 | |
切换默认数据源
1 | |
1 | |
在需要使用事务的方法上加
1 | |
先启动注册中心==》再启动seata==》再启动业务
Linux启动
1 | |
Sentinel限流
安装
docker安装
1 | |
1 | |
下载安装
1 | |
1 | |
1 | |
流控






降级






热点key限流




系统规则

@SentinelResource
1 | |
1 | |


SpringBoot使用
pom
1 | |
yml
1 | |
规则持久化
下载sentinel源码包






修改完成后打jar包运行
客户端使用
1 | |
1 | |
其他


注意
如果实时监控面板没有图表数据,但簇点链路有数据,说明是客户端的时间和服务端时间不一致

