《深入理解Spring Cloud与微服务构建》学习笔记(九)~Eureka集群配置

一、在上一篇的项目基础上进行扩展:在resourse下面添加三个配置文件,如下:


配置文件内容:三个配置文件分别进行配置,只需要修改端口和互相注册地址即可:

这里使用一个项目启用三个EurekaServer,分别占用不同的端口,实现Eureka集群服务:
eureka-server-1  :  peer1 端口:8760  服务地址:http://peer1:8760/eureka/
eureka-server-2  :  peer2 端口:8770  服务地址:http://peer1:8770/eureka/
eureka-server-3  :  peer3 端口:8780  服务地址:http://peer1:8780/eureka/
每一个服务分别注册其余两个服务,


###########################################################
#########Eureka Server 集群: 多profile 配置################
###########################################################
##-------------peer1------------------
server:
  port: 8760  #【需要修改的地方】
eureka:
  server:
    enableSelfPreservation: false   #自我保护模式
    response-cache-update-interval-ms: 30  #默认30更新一次响应缓存
  instance:
    hostname: peer1 #eureka服务端的实例名称
    #   在Eureka中显示真实IP:端口号
    prefer-ip-address: true
    instance-id: ${spring.cloud.client.ipAddress}:${server.port}
    leaseRenewalIntervalInSeconds: 10
    leaseExpirationDurationInSeconds: 30
  client:
    #register-with-eureka:表示是否将自己注册到eureka server,因为要构建集群环境,需要将自己注册到及群众,所以应该开启。默认为true,可不显式设置。
    registerWithEureka: true  #false表示不向注册中心注册自己。
    #fetch-registry表示是否从eureka server获取注册信息,如果是单一节点,不需要同步其他eureka server节点,则可以设置为false,但此处为集群,应该设置为true,默认为true,可不设置。
    fetch-registry: true    #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务

    #注册到另外两个Server端
    service-url:
      defaultZone:
        #单机设置与Eureka Server交互的地址查询服务和注册服务都需要依赖这个地址(单机)。
        http://peer2:8770/eureka/,http://peer3:8780/eureka/  #【需要修改的地方】

二、由于我们使用了http://peer1这种写法,需要配一下host。Windows的host在C:\Windows\System32\drivers\etc\host,mac的在/private/etc


然后在启动项里配置三个服务的启动配置,如:


只需要确认以下三项正确就可以,分配配置为:peer1\peer2\peer3

配置完为以下三个启动项:

分别启动三个启动项:访问地址,效果如下:
http://localhost:8760/

http://localhost:8770/

http://localhost:8780/

这时候我们在将两个客户端同时指向peer1,启动查看效果:

此时可以看到两个客户端虽然只指向了peer1,但是在peer2,peer3节点已经被同步注册。

示例代码:https://download.csdn.net/download/ssdate/11005503

猜你喜欢

转载自blog.csdn.net/ssdate/article/details/88316371
今日推荐