• springCloud的使用09-----高可用的注册中心


    思路:创建多个注册中心,在他们的配置文件中配置相互之间的注册

    1 在eureka-server项目的resources目录下创建两个配置文件application-peer1.yml和application-peer2.yml

    #application-peer1.yml
    server: 
     port: 8761
    eureka: 
     instance: 
      hostname: peer1
     client: 
      serviceUrl: 
       defaultZone: http://peer2:8769/eureka/  #向peer2进行注册
    spring:
     profiles: peer1 
     application: 
      name: eureka-server  #注册中心
    info: #/info请求的显示信息
     app: 
      name: ${spring.application.name}
      version: 1.0.0
     build: 
      artifactId: @project.artifactId@
      version: @project.version@  
    #application-peer2.yml
    server: 
     port: 8769
    eureka: 
     instance: 
      hostname: peer2
     client: 
      serviceUrl: 
       defaultZone: http://peer1:8761/eureka/  #向peer1进行注册
    spring:
     application: 
      name: eureka-server  #注册中心
    info: #/info请求的显示信息
     app: 
      name: ${spring.application.name}
      version: 1.0.0
     build: 
      artifactId: @project.artifactId@
      version: @project.version@  

    2 修改本地的hosts文件(C:windowsSystem32driversetcHOST)

      

    3 分别使用application-peer1.yml和application-peer2.yml配置文件启动项目

     第一种方式使用 mvn spring-boot:run -Dspring.profiles.active=peer1

             mvn spring-boot:run -Dspring.profiles.active=peer2

     第二种方式使用java -jar eureka-server-0.0.1-SNAPSHOT.jar - -spring.profiles.active=peer1

            java -jar eureka-server-0.0.1-SNAPSHOT.jar - -spring.profiles.active=peer2

      

    4 在客户端指定任意一台注册中心即可

    eureka: 
     client: 
      serviceUrl: 
       defaultZone: http://peer1:8761/eureka/ #注册服务器地址

    5 这样启动客户端在两个注册中心都可以看到

      

      

      此时就是peer1宕机,引用service-hi服务的程序仍然能够继续访问

      效果演示:

        1 将cloud-consumer-ribbon项目的注册中心配置到peer2上eureka.client.serviceUrl.defaultZone= http://peer2:8769/eureka/

        2 启动cloud-consumer-ribbon

          

        3 将peer1停掉,仍然可以访问

        4 将peer1启动,将peer2停掉,仍然如2中的效果一样

  • 相关阅读:
    MySQL乱码问题
    Oracle安装错误“程序异常终止
    Hibernate Spring
    快学Scala 第一课 (变量,类型,操作符)
    Scala 学习笔记之隐式参数和隐式转换并用
    Hadoop 学习笔记之 Incompatible namespaceIDs问题
    Kafka 学习笔记之 Topic日志清理
    Zookeeper 学习笔记之 节点个数
    Kafka 学习笔记之 删除Topic
    Kafka 学习笔记之 架构
  • 原文地址:https://www.cnblogs.com/lifeone/p/9042203.html
Copyright © 2020-2023  润新知