zoukankan      html  css  js  c++  java
  • 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中的效果一样

  • 相关阅读:
    Redis持久化
    Windows Phone中扩展WebBrowser使其支持绑定html内容
    使用MVVM-Sidekick开发Universal App(二)
    使用MVVM-Sidekick开发Universal App(一)
    在Windows Phone 8中使用Live Connect并保持登陆状态
    iOS 打印结构体
    CGAffineTransformMake 矩阵变换 的运算原理(转)
    二维码快速扫描工具
    微信小程序之wx.request:fail错误,真机预览请求无效问题解决,安卓,ios网络预览异常(转)
    UIView的setNeedsLayout, layoutIfNeeded 和 layoutSubviews 方法之间的关系解释(转)
  • 原文地址:https://www.cnblogs.com/lifeone/p/9042203.html
Copyright © 2011-2022 走看看