博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot2.0 + SpringCloud Eureka搭建高可用注册中心(Eureka之三)
阅读量:4312 次
发布时间:2019-06-06

本文共 1646 字,大约阅读时间需要 5 分钟。

上一篇中提到用SpringBoot2.0+Eureka搭建服务注册中心和服务提供者,详情参考:

        现在讲一下SpringCloud+Eureka搭建高可用注册中心。在微服务架构的分布式环境中,必须充分考虑可能会发生的故障情况,所以生产环境必须对各个组件进行高可用部署,对于微服务也是一样,Eureka的服务治理设计中,所有的节点既是服务提供者,也是服务消费者,服务中心也不例外。

        Eureka服务的高可用实际上就是向别的服务注册中心注册自己,形成一个各个注册中心相互注册的闭环链。下面是项目的搭建:

一、根据上面链接新建一个项目,除了application.properties之外,所有信息一样。

        这时,我们将application.properties文件删掉,新建两个properties文件(有些人喜欢用yaml),分别命名为application-peer1.properties和application-peer2.properties。

①application-peer1.properties文件配置如下:

spring.application.name=eureka-serverserver.port=1111eureka.instance.hostname=peer1eureka.client.service-url.defaultZone=http://peer2:1112/eureka/

②application-peer2.properties文件配置如下:

spring.application.name=eureka-serverserver.port=1112eureka.instance.hostname=peer2eureka.client.service-url.defaultZone=http://peer1:1111/eureka/

可以看到,定义了两个服务端口,分别是1111和1112,他们的名字是一样,而且分别向对方注册自己。

二、在IDEA中创建两个服务启动项,分别根据peer1和peer2文件来启动服务。

1、在点击run那里,选择edit configurations...,

2、选中刚才创建的项目,会看到只有App这个启动项(我的项目是已经新建了peer1和peer2),

  • 选中App,去掉“Single Instance only”的勾,这样子才能创建多例,(新建的也要去掉勾)
  • 点击“+”,填写自定义的Name,
  • 选择“Main Class”,作为这个properties的启动类,这个项目只有一个启动类,所以都选App启动类,
  • 填写Program argument:--spring.profiles.active=peer1(--spring.profiles.active=peer2),表示当前服务是根据哪个properties文件进行加载配置,有不少人是喜欢用cmd窗口打包启动的。

​       

当新建好了peer1和peer2,依然要点一下run那里,这时会多出来刚才新建的名字为peer1和peer2的选择,那么现在可以依次选择,并启动peer1和peer2服务,当启动第一个服务时会报错,这没关系,当启动第二个时,就正常,然后回去重启第一个服务,就正常了。这是因为启动第一个服务时,它会向第二个服务请求注册,而第二个服务还没有启动,会有connect refuse。

        这个时候可以访问一下Spring Eureka,输入127.0.0.1:1111

在peer1服务注册中心里有两个服务,peer2和它自己,registered-replicas那里也显示了向它注册的服务中心信息。

        输入127.0.0.1:1112,得到类似的效果:

 

        至此,SpringBoot2.0+Eureka搭建高可用注册中心已经成功。

转载于:https://www.cnblogs.com/SysoCjs/p/10165785.html

你可能感兴趣的文章
CArray 的两种方式与类中包含指针情况
查看>>
ElasticSearch 自定义排序处理
查看>>
域的建立过程
查看>>
使用installer安装kbengine
查看>>
IOS 开发didFinishLaunchingWithOptions 设置启动View
查看>>
MyBank(自助银行)
查看>>
python机器学习-sklearn挖掘乳腺癌细胞(二)
查看>>
javascript中的函数节流和函数去抖
查看>>
异步函数的串行执行和并行执行
查看>>
Import Solution Error code :0x80048426
查看>>
Spring的注解@Qualifier小结
查看>>
目前最新版本ActiveMQ 5.15.3 和JDK版本有关的问题
查看>>
hdu 4513 吉哥系列故事——完美队形II
查看>>
ECSHOP让产品浏览历史按照先后进行排序
查看>>
解决小程序中 cover-view无法盖住canvas的问题,仅安卓真机出现
查看>>
C# 获取数组的内存地址
查看>>
职场规则五
查看>>
跟我一起学WCF(1)——MSMQ消息队列
查看>>
京东联盟采集规则
查看>>
hdu-1143(简单dp)
查看>>