3.eureka高可用
Eureka Server 高可用集群
在上一个章节,实现了单节点的Eureka Server的服务注册与服务发现功能。Eureka Client会定时连接
Eureka Server,获取注册表中的信息并缓存到本地。微服务在消费远程API时总是使用本地缓存中的数
据。因此一般来说,即使Eureka Server发生宕机,也不会影响到服务之间的调用。但如果Eureka
Server宕机时,某些微服务也出现了不可用的情况,Eureka Server中的缓存若不被刷新,就可能会影
响到微服务的调用,甚至影响到整个应用系统的高可用。因此,在生成环境中,通常会部署一个高可用
的Eureka Server集群。
Eureka Server可以通过运行多个实例并相互注册的方式实现高可用部署,Eureka Server实例会彼此增
量地同步信息,从而确保所有节点数据一致。事实上,节点之间相互注册是Eureka Server的默认行
为。


搭建 Eureka Server高可用集群
启动第一个注册中心服务:
修改eureka模块配置yml如下:
spring:
application:
name: eureka1-server
server:
port: 9000 #端口
#配置eureka server
eureka:
instance:
hostname: localhost
client:
register-with-eureka: true #是否将自己注册到注册中心(默认为true)
fetch-registry: true #是否要从eureka获取注册信息
service-url: #配置暴露给eureka Client的请求地址
defaultZone: http://127.0.0.1:8000/eureka/ #第一个端口为9000的注册中心服务要去第二个端口为8000的注册中心注册
配置完上述之后启动服务:

启动第二个注册中心
修改eureka模块配置yml如下:
spring:
application:
name: eureka2-server
server:
port: 8000 #端口
#配置eureka server
eureka:
instance:
hostname: localhost
client:
register-with-eureka: true #是否将自己注册到注册中心(默认为true)
fetch-registry: true #是否要从eureka获取注册信息
service-url: #配置暴露给eureka Client的请求地址
defaultZone: http://127.0.0.1:9000/eureka/ #第二个端口为8000的注册中心服务要去第一个端口为9000的注册中心注册
配置完成后在IDEA里面进行如下操作才能同时启动另一个注册中心服务:


然后就可以启动复制出来的启动项了:


服务注册到Eureka Server集群
如果需要将微服务注册到Eureka Server集群只需要修改yml配置文件即可
eureka: client: service-url: defaultZone: http://localhost:9000/eureka/,http://localhost:8000/eureka/ #多个eurekaserver之间通过","分割 instance: prefer-ip-address: true #使用IP地址注册
分类:
springCloud
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决