Eureka集群

Eureka集群

  • 服务启动后向Eureka注册,Eureka Server会将注册信息向其他Eureka Server进行同步
  • 当服务消费者要调用服务提供者,则向服务注册中心获取服务提供者地址,然后会将服务提供者地址缓存在本地
  • 下次再调用时,则直接从本地缓存中取,完成一次调用

修改HOST文件

127.0.0.1 eureka
127.0.0.1 eureka1
127.0.0.1 eureka2

服务端集群

  • 高可用Eureka Server:Eureka Server即服务的注册中心,在开发中,事实上EurekaServer也可以是一个集群,部署多台,形成高可用的Eureka注册中心

🐤服务同步

  • 多个Eureka Server之间也会互相注册为服务
  • 当服务提供者注册到Eureka Server集群中的某个节点时
  • 该节点会把服务的信息同步给集群中的每个节点,从而实现数据同步
  • 因此,无论客户端访问到Eureka Server集群中的任意一个节点,都可以获取到完整的服务列表信息

集群搭建

再创建两个Euraka服务器、3001、3002

🐬配置文件1

server:
  port: 3000

eureka:
  server:
    #关闭自我保护机制
    enable-self-preservation: false
    #设置清理间隔(单位:毫秒 默认是60*1000)
    eviction-interval-timer-in-ms: 4000
  instance:
    hostname: eureka

  client:
    #把自己作为一个客户端注册到自己身上
    registerWithEureka: true
    #要从服务端获取注册信息
    fetchRegistry: true
    serviceUrl:
      #微服务要注册到的地址
      defaultZone: http://eureka1:3001/eureka,http://eureka2:3002/eureka

spring:
  application:
    name: eurekaServer

🐬配置文件2

server:
  port: 3001

eureka:
  server:
    #关闭自我保护机制
    enable-self-preservation: false
    #设置清理间隔(单位:毫秒 默认是60*1000)
    eviction-interval-timer-in-ms: 4000
  instance:
    hostname: eureka1

  client:
    #把自己作为一个客户端注册到自己身上
    registerWithEureka: true
    #要从服务端获取注册信息
    fetchRegistry: true
    serviceUrl:
      #微服务要注册到的地址
      defaultZone: http://eureka:3000/eureka,http://eureka2:3002/eureka

spring:
  application:
    name: eurekaServer

🐬配置文件3

server:
  port: 3002

eureka:
  server:
    #关闭自我保护机制
    enable-self-preservation: false
    #设置清理间隔(单位:毫秒 默认是60*1000)
    eviction-interval-timer-in-ms: 4000
  instance:
    hostname: eureka2

  client:
    #把自己作为一个客户端注册到自己身上
    registerWithEureka: true
    #要从服务端获取注册信息
    fetchRegistry: true
    serviceUrl:
      #微服务要注册到的地址
      defaultZone: http://eureka:3000/eureka,http://eureka1:3001/eureka

spring:
  application:
    name: eurekaServer

服务端注册时,会同步到集群当中的每一个服务器当中

在user工程当中配置一个服务地址

eureka:
  client:
    serviceUrl:
      # eureka服务端提供的注册地址 参考服务端配置的这个路径
      defaultZone: http://eureka:3000/eureka

在配置文件当中配置了一个地址,会自动同步到另外两个当中,建议把集群地址都写上

eureka:
  client:
    serviceUrl:
      # eureka服务端提供的注册地址 参考服务端配置的这个路径
      defaultZone: http://eureka:3000/eureka,http://eureka1:3001/eureka,http://eureka2:3002/eureka

把两个goods工程给注册到服务中心,注册中心

🐤配置文件1

eureka:
  client:
    serviceUrl:
      # eureka服务端提供的注册地址 参考服务端配置的这个路径
      defaultZone: http://eureka:3000/eureka,http://eureka1:3001/eureka,http://eureka2:3002/eureka

同样的方式添加注册地址即可注册服务

posted @ 2020-08-13 18:56  BNTang  阅读(222)  评论(0编辑  收藏  举报