registro eureka de alta disponibilidade da nuvem da primavera

A alta disponibilidade do servidor Eureka da Spring Cloud é que diferentes Eureka se registram entre si, de modo a realizar a função de replicação mútua das informações de registro. Todos eles têm as mesmas informações. Quando uma das centrais de registro cai, isso não afeta o funcionamento normal do programa. Geralmente, existem vários servidores, mas também podem estar no mesmo servidor.

Um: desta vez é para simular 2 servidores, porque eles estão na mesma máquina, então o arquivo Host precisa ser modificado

Windos está neste caminho, C: \ Windows \ System32 \ drivers \ etc. Você pode levá-lo para a área de trabalho primeiro e, em seguida, renomeá-lo para um arquivo .txt, abri-lo e remover o sufixo e colocá-lo em seu local original . Ele pode ser modificado. Este arquivo é somente leitura por padrão. Clique com o botão direito para selecionar as propriedades e remover somente leitura.

Abra o Host, modifique o seguinte para adicionar dois mapeamentos 127.0.0.1

Dois: modificar o arquivo de configuração do programa

Copie 2 do application.yml original e renomeie-o para a figura a seguir

As propriedades gerais de configuração podem ser escritas em application.yml

#文件存放通用的配置
spring:
  application:
    name: api-eureka
  profiles:
    active: server1
  server:
    eviction-interval-timer-in-ms: 4000  # 设置清理的间隔时间,而后这个时间使用的是毫秒单位(默认是60秒)
    enable-self-preservation: false  #关闭保护模式
    renewal-percent-threshold: 0.9

Conteúdo de application-server1.yml

server:
  port: 8001
eureka:
  instance:
    hostname: server1
    #hostname:${spring.cloud.client.ipAddress} 不同的主机可以加上这句话
    #prefer-ip-address: true   不同的主机可以加上这句话
    instance-id: eureka-8001
    lease-renewal-interval-in-seconds: 30    # 续约更新时间间隔(默认30秒),eureka客户端向服务端发送心跳的时间间隔
    lease-expiration-duration-in-seconds: 90 # 设置心跳的周期间隔,续约到期时间(默认90秒)
  client:
    # 表示是否注册自身到eureka服务器
    register-with-eureka: true
    # 是否从eureka上获取注册信息
    fetch-registry: false
    service-url:
      defaultZone: http://server2:8002/eureka/  #/如果是多台机器,用过http://IP地址:8002/eureka/进行相互注册,客户端最好都注册到多个注册中心,虽然注册到一个注册中心也可以实现相互复制,但是如果主eurka挂了,
                                                #/那么后续就无法再注册服务了,这也是网上的服务注册多个到eureka用逗号分隔的原因,只要有一个活的eureka,就可以实现复制


 

Conteúdo de application-server2.yml

server:
  port: 8002
eureka:
  instance:
    hostname: server2
    #hostname:${spring.cloud.client.ipAddress} 不同的主机可以加上这句话
    #prefer-ip-address: true   不同的主机可以加上这句话
    instance-id: eureka-8002
    lease-renewal-interval-in-seconds: 30    # 续约更新时间间隔(默认30秒),eureka客户端向服务端发送心跳的时间间隔
    lease-expiration-duration-in-seconds: 90 # 设置心跳的周期间隔,续约到期时间(默认90秒)
  client:
    # 表示是否注册自身到eureka服务器
    register-with-eureka: true
    # 是否从eureka上获取注册信息
    fetch-registry: false
    service-url:
      defaultZone: http://server1:8001/eureka/  #/如果是多台机器,用过http://IP地址:8002/eureka/进行相互注册,客户端最好都注册到多个注册中心,虽然注册到一个注册中心也可以实现相互复制,但是如果主eurka挂了,
      #/那么后续就无法再注册服务了,这也是网上的服务注册多个到eureka用逗号分隔的原因,只要有一个活的eureka,就可以实现复制

 

Três: Configurar ideia para iniciar 2 centros de registro

Crie dois novos itens de inicialização, selecione o mesmo serviço e escolha informações de configuração diferentes

Em seguida, inicie esses dois serviços sucessivamente. Quando o primeiro serviço for iniciado, um erro será relatado, porque o primeiro serviço foi registrado no segundo serviço e o segundo serviço não foi iniciado neste momento. Após iniciar o segundo serviço, É normal

Ou comece via pacote jar

java -jar XXXXXX.jar --spring.profiles.active = server1
java -jar XXXXXX.jar --spring.profiles.active = server2
 

4: Inicie o serviço C e registre-se no registro

其他服务最好都注册到注册中心,当然注册到某一个注册中心也可以,本次注册到一个注册中心,
defaultZone: http://localhost:8001/eureka/

Depois de iniciar o serviço C, digite o endereço do centro de registro server1 e descubra que o serviço C está registrado, e você pode ver o segundo centro de registro server2

 Insira o endereço do centro de registro do servidor2 e descubra que o serviço C também está registrado. Registramos apenas o serviço C no servidor1, mas também está no servidor2, indicando que a informação está sincronizada, e você pode ver o primeiro centro de registro .

Acho que você gosta

Origin blog.csdn.net/CarryBest/article/details/102605888
Recomendado
Clasificación