SpringCloud-高级篇(九)

(1)Seata高可用

我们学习了Seata的各种用法了,Seata的服务是单节点部署的,这个服务如果挂了,整个事务都没有办法完了,下面我们学习Seata的高可用的知识。

实现高可用,还是比较简单,只要整成一个集群就可以了,弄好多个服务器,我们的服务器都是注册在注册中心的,我们的微服务只要找到注册中心,就可以对这些多个服务负载均衡了

我们不仅要实现高可用,还要实现异地容灾:如果你弄了好几个节点部署起来,放在一个机房里面,如果这个机房出现了故障,整个集群也就完了,对于大型的集群来讲,往往都会把这些服务异地多机房部署,如果一个机房出现问题,还有另外一个机房可用,这就叫做异地多机房,起到容灾的效果

Seata服务通过事务组,找事务组对应的映射关系,确定了集群,我们做异地容灾,我们不修改配置文件,通过配置的热更新,通过nacos的配置管理:当集群出现故障,实现动态切换

做配置的热更新:把配置文件中的事务组配置到nacos中

在服务中读取这个配置文件

重启服务:在nacos中查看启动后是否正常

Seata1:8091几个服务都注册上来了

Seata2:8092没有任何注册:

修改配置文件:SH改为HZ

8092:也出现了注册:

微服务此时就连到HZ集群上面了:微服务也不受影响,不需要重启

相关推荐
Estar.Lee13 分钟前
查手机号归属地免费API接口教程
android·网络·后端·网络协议·tcp/ip·oneapi
2401_857610032 小时前
SpringBoot社团管理:安全与维护
spring boot·后端·安全
凌冰_2 小时前
IDEA2023 SpringBoot整合MyBatis(三)
spring boot·后端·mybatis
码农飞飞3 小时前
深入理解Rust的模式匹配
开发语言·后端·rust·模式匹配·解构·结构体和枚举
一个小坑货3 小时前
Rust 的简介
开发语言·后端·rust
monkey_meng3 小时前
【遵守孤儿规则的External trait pattern】
开发语言·后端·rust
草莓base3 小时前
【手写一个spring】spring源码的简单实现--bean对象的创建
java·spring·rpc
Estar.Lee3 小时前
时间操作[计算时间差]免费API接口教程
android·网络·后端·网络协议·tcp/ip
乌啼霜满天2494 小时前
Spring 与 Spring MVC 与 Spring Boot三者之间的区别与联系
java·spring boot·spring·mvc
Grey_fantasy4 小时前
高级编程之结构化代码
java·spring boot·spring cloud