(1)Seata高可用
我们学习了Seata的各种用法了,Seata的服务是单节点部署的,这个服务如果挂了,整个事务都没有办法完了,下面我们学习Seata的高可用的知识。
实现高可用,还是比较简单,只要整成一个集群就可以了,弄好多个服务器,我们的服务器都是注册在注册中心的,我们的微服务只要找到注册中心,就可以对这些多个服务负载均衡了
我们不仅要实现高可用,还要实现异地容灾:如果你弄了好几个节点部署起来,放在一个机房里面,如果这个机房出现了故障,整个集群也就完了,对于大型的集群来讲,往往都会把这些服务异地多机房部署,如果一个机房出现问题,还有另外一个机房可用,这就叫做异地多机房,起到容灾的效果
Seata服务通过事务组,找事务组对应的映射关系,确定了集群,我们做异地容灾,我们不修改配置文件,通过配置的热更新,通过nacos的配置管理:当集群出现故障,实现动态切换
做配置的热更新:把配置文件中的事务组配置到nacos中
在服务中读取这个配置文件
重启服务:在nacos中查看启动后是否正常
Seata1:8091几个服务都注册上来了
Seata2:8092没有任何注册:
修改配置文件:SH改为HZ
8092:也出现了注册:
微服务此时就连到HZ集群上面了:微服务也不受影响,不需要重启