史上最简单的SpringCloud教程 | 第十篇: 高可用的服务注册中心(Finchley版本)

举报
方志朋 发表于 2018/12/22 09:44:16 2018/12/22
【摘要】 文章 史上最简单的 SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka) 介绍了服务注册与发现,其中服务注册中心Eureka Server,是一个实例,当成千上万个服务向它注册的时候,它的负载是非常高的,这在生产环境上是不太合适的,这篇文章主要介绍怎么将Eureka Server集群化。

文章 史上最简单的 SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka) 介绍了服务注册与发现,其中服务注册中心Eureka Server,是一个实例,当成千上万个服务向它注册的时候,它的负载是非常高的,这在生产环境上是不太合适的,这篇文章主要介绍怎么将Eureka Server集群化。


一、准备工作

image.png


Eureka通过运行多个实例,使其更具有高可用性。事实上,这是它默认的熟性,你需要做的就是给对等的实例一个合法的关联serviceurl。


这篇文章我们基于第一篇文章的工程,来做修改。


二、改造工作

在eureka-server工程中resources文件夹下,创建配置文件application-peer1.yml:


image.png


并且创建另外一个配置文件application-peer2.yml:


image.png


这时eureka-server就已经改造完毕。


image.png


按照官方文档的指示,需要改变etc/hosts,linux系统通过vim /etc/hosts ,加上:


image.png


windows电脑,在c:/windows/systems/drivers/etc/hosts 修改。


这时需要改造下service-hi:


image.png


三、启动工程

启动eureka-server:


image.png


启动service-hi:


image.png


访问:localhost:8761,如图:


image.png


你会发现注册了service-hi,并且有个peer2节点,同理访问localhost:8769你会发现有个peer1节点。


client只向8761注册,但是你打开8769,你也会发现,8769也有 client的注册信息。


个人感受:这是通过看官方文档的写的demo ,但是需要手动改host是不是不符合Spring Cloud 的高上大?


image.png


摘自官网


image.png


此时的架构图:


image.png


Eureka-eserver peer1 8761,Eureka-eserver peer2 8769相互感应,当有服务注册时,两个Eureka-eserver是对等的,它们都存有相同的信息,这就是通过服务器的冗余来增加可靠性,当有一台服务器宕机了,服务并不会终止,因为另一台服务存有相同的数据。


本文源码下载:

https://github.com/forezp/SpringCloudLearning/tree/master/sc-f-chapter10


四、参考文献

high_availability_zones

http://blog.csdn.net/forezp/article/details/70183572



【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。