Spring-Cloud-Netflix-Eureka集群搭建

eureka集群原理

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

搭建流程

  1. 修改host文件 C:\Windows\System32\drivers\etc\host
    把只读属性去掉
    在这里插入图片描述
  2. 添加host 信息
    在这里插入图片描述
127.0.0.1   eureka
127.0.0.1   eureka1
127.0.0.1   eureka2
  1. 新建两个子模块Eureka3001,Eureka3002
    在这里插入图片描述
    在这里插入图片描述
  2. 配置和Eureka3000同样 (pom.xml,启动类)
    在这里插入图片描述
  3. 修改Eureka3000的yml配置文件
    在这里插入图片描述
server:
  port: 3000
spring:
  application:
    name: eurekaServer  
eureka:
  server:
    enable-self-preservation: false  #关闭自我保护机制
    eviction-interval-timer-in-ms: 4000 #设置清理间隔(单位:毫秒 默认是60*1000)
  instance:
    hostname: eureka

  client:
    registerWithEureka: true #不把本身做为一个客户端注册到本身身上
    fetchRegistry: true  #不须要从服务端获取注册信息(由于在这里本身就是服务端,并且已经禁用本身注册了)
    serviceUrl: #微服务要注册到的地址.
      defaultZone: http://eureka1:3001/eureka,http://eureka2:3002/eureka,
  1. 复制一份application.yml到Eureka3001,Eureka3002
    在这里插入图片描述
    在这里插入图片描述
  2. 依次启动Eureka3000,Eureka3001,Eureka3002
    启动Eureka3000,Eureka3001可能会报错,由于三个服务相互依赖,只要三个服务所有启动完成就好了
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  3. 将user,goods,goods1客户端注册到server中心
    1.打开user的application.yml
    在这里插入图片描述
server:
  port: 5000
eureka:
  client:
    serviceUrl:
      #eureka服务端提供的注册地址 参考服务端配置的这个路径
      defaultZone: http://eureka:3000/eureka,http://eureka1:3001/eureka,http://eureka2:3002/eureka
  instance:
    instance-id: user-1 #此实例注册到eureka服务端的惟一的实例ID
    prefer-ip-address: true #是否显示IP地址
    #eureka客户须要多长时间发送心跳给eureka服务器,代表它仍然活着,默认为30 秒 (与下面配置的单位都是秒)
    leaseRenewalIntervalInSeconds: 10
    #Eureka服务器在接收到实例的最后一次发出的心跳后,须要等待多久才能够将此实例删除,默认为90秒
    leaseExpirationDurationInSeconds: 30

spring:
  application:
    name: client-user #此实例注册到eureka服务端的n

注意启动类注解在这里插入图片描述
goods,goods1
在这里插入图片描述
在这里插入图片描述
9. 访问localhost:3000
在这里插入图片描述
完成java

相关文章
相关标签/搜索