上一篇文章【Spring Cloud搭建注册中心】成功搭建了一个Eureka Server服务注册中心,不过相信细心的朋友都会发现,这个服务注册中心是一个单节点服务注册中心,万一发生故障或者服务器宕机,那所有的服务可就不能使用了,这个在生产环境了是不允许的。

Eureka Server其实设计早就考虑到了高可用性,Eureka Server可以将自己作为服务注册到其他服务注册中心,这样可以互相注册,以实现服务清单的同步,达到高可用的效果。

——————————————————————————————————————————————————————

添加配置文件

在我们上一篇文章中,搭建的eureka-server-test项目中添加两个配置文件,aplication-peer1.properties和aplication-peer2.properties,详细配置文件内容如下:

#端口号
server.port=8081
spring.profiles=peer1
eureka.instance.hostname=peer1
#向注册中心注册服务
eureka.client.registerWithEureka=false
# 检索服务
eureka.client.fetchRegistry=false
eureka.client.serviceUrl.defaultZone=http://peer2:8082/eureka/
#在Eureka服务器获取不到集群里对等服务器上的实例时,需要等待的时间
server.waitTimeInMsWhenSyncEmpty=0
#自我保护模式
server.enableSelfPreservation=false
#端口号
server.port=8082
spring.profiles=peer2
eureka.instance.hostname=peer2
#向注册中心注册服务
eureka.client.registerWithEureka=false
# 检索服务
eureka.client.fetchRegistry=false
eureka.client.serviceUrl.defaultZone=http://peer1:8081/eureka/
#在Eureka服务器获取不到集群里对等服务器上的实例时,需要等待的时间
server.waitTimeInMsWhenSyncEmpty=0
#自我保护模式
server.enableSelfPreservation=false

在peer1配置文件中,serviceUrl指向peer2,而peer2配置文件中,serviceUrl指向peer1,这样就做到了相互注册。这里还需要注意在本地测试的时候,我们需要修改host文件(C:\Windows\System32\drivers\etc),添加以下内容:

127.0.0.1 peer1
127.0.0.1 peer2

生成jar包

使用IDEA进行Maven Intall,【 IntelliJ IDEA 社区版 Maven Install 和Maven clean】

启动两个注册服务中心

这里我们不使用IDEA进行项目启动,而是直接通过命令来启动。

java -jar eureka-server-test-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer1
java -jar eureka-server-test-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer2



启动成功之后,在浏览器中进行访问,这时候在8081的DS Replicas中可以看到peer2节点,在8082的DS Replicas中可以看到peer1节点,这样我们双节点的服务注册中心就搭建好了。

启动服务提供者

依然是上一篇文章中创建的eureka-client-test项目,修改提供者的配置文件:

server.port=9081
spring.application.name=client-demo
eureka.client.serviceUrl.defaultZone=http://peer1:8081/eureka/,http://peer2:8082/eureka/

此处两个服务注册中的地址都添加上,以","分隔。

然后分别访问http://localhost:8081/ 和 http://localhost:8082/ 可以看到提供者已经注册到两个服务注册中心了。

到这里,一个高可用的服务注册中心集群就搭建完成了。

转载于:https://www.cnblogs.com/clarezhou/p/11078759.html

Spring Cloud(F版)搭建高可用服务注册中心相关推荐

  1. 使用SpringCloud搭建高可用服务注册中心

    我们需要的,不仅仅是一个服务注册中心而已,而是一个高可用服务注册中心. 上篇博客中我们介绍了如何使用Spring Cloud搭建一个服务注册中心,但是搭建好的服务注册中心是一个单节点的服务注册中心,这 ...

  2. Spring Cloud构建微服务架构(六)高可用服务注册中心

    前言 在Spring Cloud系列文章的开始,我们就介绍了服务注册与发现,其中,主要演示了如何构建和启动服务注册中心Eureka Server,以及如何将服务注册到Eureka Server中,但是 ...

  3. spring-cloud开发微服务笔记(二):高可用Eureka注册中心的搭建与RestTemplate和Fengin客户端调用微服务示例

    引言:这一篇博客是将上一篇spring-cloud-eureka-server的单机模式改为集群模式,体现eureka的高可用特性.生产环境无论是Eureka注册中心还是Client客户端大多是部署在 ...

  4. Spring Cloud(十一)高可用的分布式配置中心 Spring Cloud Bus 消息总线集成(RabbitMQ)

    上一篇文章,留了一个悬念,Config Client 实现配置的实时更新,我们可以使用 /refresh 接口触发,如果所有客户端的配置的更改,都需要手动触发客户端 /refresh ,当服务越来越多 ...

  5. Spring Cloud Eureka(三)实现一个高可用的注册中心

    Spring Cloud Eureka(三)实现一个高可用的注册中心 实现一个高可用的注册中心 在微服务结构这样的分布式环境中,我们需要充分考虑发生故障的情况,所以在生产环境中必须为服务的各个组件进行 ...

  6. 高可用Eureka注册中心配置说明(双机部署)

    目  录 1. 高可用EureKa注册中心示意图 2. Eureka实例相互注册配置 3. 微服务注册到Eureka配置 4. 启动步骤及配置成功检查 5. 说明事项 1. 高可用EureKa注册中心 ...

  7. Spring Cloud(九)高可用的分布式配置中心 Spring Cloud Config 集成 Eureka 服务

    上一篇文章,讲了SpringCloudConfig 集成Git仓库,这一篇我们讲一下SpringCloudConfig 配和 Eureka 注册中心一起使用 在分布式系统中,由于服务数量巨多,为了方便 ...

  8. Spring Cloud(十)高可用的分布式配置中心 Spring Cloud Config 中使用 Refresh

    上一篇文章讲了SpringCloudConfig 集成Git仓库,配和 Eureka 注册中心一起使用,但是我们会发现,修改了Git仓库的配置后,需要重启服务,才可以得到最新的配置,这一篇我们尝试使用 ...

  9. Spring Cloud(八)高可用的分布式配置中心 Spring Cloud Config

    在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件.在Spring Cloud中,有分布式配置中心组件spring cloud config,它支持配 ...

最新文章

  1. python 读写utf8文件_Python关于 文件读写的总结
  2. 10个奇幻的HTML5和Javascript效果
  3. mysql的电话面试题_以往百度电话面试题
  4. java11创建项目_2019-04-11 使用IDEA创建SpringBoot项目
  5. 【matlab】找出数组中符合条件的数并赋值
  6. 1024,如果全世界程序员都消失了,会怎样?
  7. 10个新晋潮语,测你潮不潮!
  8. 怎样的数据分析才有价值
  9. Web前端的学习路线到底是什么,看完秒懂!
  10. 《缠中说禅108课》37:背驰的再分辨
  11. java-使用keytool信任自签证书,需要重启
  12. 加油中国,雄起汶川-快乐工作,快乐生活(多图)
  13. android FDE功能介绍
  14. 任务卡_05-数据库_-MySql 高级任务
  15. 6代cpu装win7
  16. C/C++中,数组作为函数参数传入
  17. Java使用Jsoup写爬虫
  18. 使用Matlab定制伯德图坐标纸
  19. 2022年全球及中国农业微生物行业头部企业市场占有率及排名调研报告
  20. 2020-01-24

热门文章

  1. 建立神经网络来预测贷款风险
  2. Readiness 探测 - 每天5分钟玩转 Docker 容器技术(144)
  3. 人民的名义中,为什么蔡成功的贷款这么难?
  4. 我在河南安阳拍摄的一个山村小孩儿
  5. 看“意大利文艺复兴艺术展”(1)
  6. 通过ap运行cab安装程序的方法及Sample Code
  7. android 视频开发sd卡,Android开发之SD卡文件操作分析
  8. js中的json ajax,js结合json实现ajax简单实例
  9. java api 英文_教你查阅Java API 英文文档(JDK 11)
  10. android+rom+bootloader+flash,Android ROM开发(4) bootloader 三种启动模式