SpringCloud-高级篇(九)

(1)Seata高可用

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

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

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

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

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

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

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

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

Seata2:8092没有任何注册:

修改配置文件:SH改为HZ

8092:也出现了注册:

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

相关推荐
Ai 编码助手5 小时前
在 Go 语言中如何高效地处理集合
开发语言·后端·golang
小丁爱养花5 小时前
Spring MVC:HTTP 请求的参数传递2.0
java·后端·spring
Channing Lewis5 小时前
什么是 Flask 的蓝图(Blueprint)
后端·python·flask
轩辕烨瑾6 小时前
C#语言的区块链
开发语言·后端·golang
feilieren7 小时前
SpringBoot 搭建 SSE
java·spring boot·spring
栗豆包8 小时前
w175基于springboot的图书管理系统的设计与实现
java·spring boot·后端·spring·tomcat
萧若岚9 小时前
Elixir语言的Web开发
开发语言·后端·golang
Channing Lewis9 小时前
flask实现重启后需要重新输入用户名而避免浏览器使用之前已经记录的用户名
后端·python·flask
Channing Lewis9 小时前
如何在 Flask 中实现用户认证?
后端·python·flask
kerwin_code9 小时前
SpringCloud Gateway 集成 Sentinel 详解 及实现动态监听Nacos规则配置实时更新流控规则
spring cloud·gateway·sentinel