SpringCloud-高级篇(九)

(1)Seata高可用

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

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

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

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

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

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

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

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

Seata2:8092没有任何注册:

修改配置文件:SH改为HZ

8092:也出现了注册:

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

相关推荐
元Y亨H6 小时前
微服务架构核心组件、职责与交互全解析
spring cloud
武藤一雄8 小时前
C# 关于多线程如何实现需要注意的问题(持续更新)
windows·后端·microsoft·c#·.net·.netcore·死锁
華勳全栈9 小时前
两天开发完成智能体平台
java·spring·go
程序新视界9 小时前
为什么不建议基于Multi-Agent来构建Agent工程?
人工智能·后端·agent
alonewolf_999 小时前
Spring MVC重点功能底层源码深度解析
java·spring·mvc
lhrimperial9 小时前
企业级消息中心架构设计与实践:多渠道统一推送平台
spring cloud·中间件·系统架构
Victor35610 小时前
Hibernate(29)什么是Hibernate的连接池?
后端
Victor35610 小时前
Hibernate(30)Hibernate的Named Query是什么?
后端
源代码•宸10 小时前
GoLang八股(Go语言基础)
开发语言·后端·golang·map·defer·recover·panic
czlczl2002092510 小时前
OAuth 2.0 解析:后端开发者视角的原理与流程讲解
java·spring boot·后端