springcloud第三部分Alibaba,Nacos,Sentinel,Seata,雪花算法


在父工程的pom中引入:




下载:

下载,解压:

进入cmd模式:

成功启动可以进入8848:

=====
新建模块:

改pom:

改yml:

主启动类:

业务类:


新建9002模块,改个端口,其他跟9001都一样。
新建消费者83模块:
pom:

yml:

主启动类:

业务:
配置类:

controller:




===

新建模块:




主启动类:

业务:





测试:

====


修改组名:




改yml:


测试:





改yml:


添加配置文件:

再添加一个:


测试:

============================


看视频107:那内置的小数据库,切换成MySQL。

视频108:linux版本的nacos下载安装
这学了linux和nginx之后再来学。
=======
sentinel:






运行:

默认端口也是8080:

默认用户名密码都是sentinel。

新建8401模块:

改yml:



测试:


流控:



关联效果:




===
预热冷启动:

匀速排队:







测试:


====
异常比例:



异常数:


=====
热点规则:


参数索引0表示是第一个参数,就是p1


====
例外项:



====
系统规则:

=====
给模块添加点东西:



按资源名称限流:


===
按url限流:


=====
自定义限流处理:




====








测试:


只配置义业务异常的情况:

只配置sentinel:
两种都配置:


====
忽略异常:

测试:

======
继续整合feign:




创建一个接口:

创建一个兜底方法:

在接口上添加兜底的类:

业务:

测试:

==============


就是要在业务模块的pom里添加:

yml:

配置nacos:


重启之后也有流控规则:

=====================
seata处理分布式事务




下载:


下载解压后修改file.conf配置文件:
把default改成自己的工程名:

把file改成db:

修改数据库信息:

创建好seata数据库,建表的sql是在conf文件夹的db_store.sql中,直接复制即可:

继续修改配置文件:

file改成nacos,localhost改为localhost:8848:

启动nacos和seata:








=========
建三个库的回滚日志表:



====
数据库建好,开始编写业务:

pom:



创建file.conf,内容是复制过来的,具体看视频142:

创建registry.conf,内容也是拷贝过来的:











创建实现类,调用三个接口,操作三个数据库,实现业务:



创建controller:

整合mybatis和数据库:



主启动类:

先启动nacos再启动seata,然后启动模块2001
创建2002库存模块:











这两部跟2001是一样的。
============
创建2003账户模块:
pom跟上面都一样。
yml:







====
开始测试:
启动项目:

三个数据库的初始数据:



模拟超时:



加上注解:


这样错误就会回滚了。
小结:

===============
雪花算法:




浙公网安备 33010602011771号