天天看点

【Spring Cloud】分布式必学springcloud(三)——高可用Eureka一、前言二、高可用Eureka

一、前言

      在上一篇博客中,小编向大家介绍了springcloud的注册中心——Eureka,在微服务这种分布式架构下,我们需要充分考虑故障的发生,所以要保证每个节点都要是高可用的。对微服务是这样的,同样注册中心也不能是单节点的。要保证高可用,所以也要对注册中心搭建集群。

二、高可用Eureka

      Eureka的高可用其实就是将自己作为服务向其他注册中心注册自己,这样形成一个互相注册的注册中心集群,达到高可用。

      下面我们搭建两台互相注册的注册中心集群。

      借鉴前面搭建的Eureka,这里我们搭建两台,修改配置文件:

      EurekaServer1的配置文件:注册到2上

server:
  port: 
spring:
  application:
    name: eurekaserver


eureka:
  instance:
    hostname: peer1
  client:
    serviceUrl:
      defaultZone: http://peer2:2222/eureka/
           

      EurekaServer2的配置文件:注册到1上

server:
  port: 
spring:
  application:
    name: eurekaserver


eureka:
  instance:
    hostname: peer2
  client:
    serviceUrl:
      defaultZone: http://peer1:1111/eureka/
           

      注意:因为我们代码中写的是peer1和peer2,这些是服务的名字,在电脑上默认没有这个名字,所以需要进行配置,否则读不出服务器。

  • Linux 需要再/etc/hosts文件对peer1和peer2进行转换;
  • windows 需要C:\Windows\System32\drivers\etc 下的hosts文件进行转换
【Spring Cloud】分布式必学springcloud(三)——高可用Eureka一、前言二、高可用Eureka

      提供者配置文件修改:

server:
  port: 
eureka:
  client:
    serviceUrl:
      defaultZone: http://peer1:1111/eureka/,http//peer2:2222/eureka/
spring:
  application:
    name: clientb

           

提供者的配置文件中添加了所有的注册中心。

      下面我们启动所有的注册中心和提供者:

      注册中心 http://localhost:1111/:

【Spring Cloud】分布式必学springcloud(三)——高可用Eureka一、前言二、高可用Eureka

      注册中心 http://localhost:2222/ :

【Spring Cloud】分布式必学springcloud(三)——高可用Eureka一、前言二、高可用Eureka

           。从图中我们可以看出,提供者同时候注册到了注册中心1和注册中心2上,然后我们把注册中心二关闭后,发现提供者依旧在注册中心1上达到了高可用的状态。

#三,小结< font size = 3 >&nbsp; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP;高可用是分布式微服务中非常看重的,所以设计还是要不错的,这个要有高可用的思想,多多使用。

继续阅读