zoukankan      html  css  js  c++  java
  • 服务注册与发现【Eureka】- 集群Eureka构建步骤

    Eureka集群原理说明

             


    Eureka集群环境构建

    参考 cloud-eureka-server7001 ,新建一个 cloud-eureka-server7002

    POM:直接复制 7001 的 POM 到  7002

    修改映射配置(模仿两台服务器)

    找到C:WindowsSystem32driversetc路径下的hosts文件,修改映射配置添加进hosts文件:

    127.0.0.1  eureka7001.com

    127.0.0.1  eureka7002.com

    YML

    以前单机版:

    现在集群版:

    7001:

    server:
      port: 7001
    
    eureka:
      instance:
        hostname: eureka7001.com  #eureka服务端的实例名字
      client:
        register-with-eureka: false    #表识不向注册中心注册自己
        fetch-registry: false   #表示自己就是注册中心,职责是维护服务实例,并不需要去检索服务
        service-url:
          defaultZone: http://eureka7002.com:7002/eureka/    #设置与eureka server交互的地址查询服务和注册服务都需要依赖这个地址
    7001 yml

    7002:

    server:
      port: 7002
    
    eureka:
      instance:
        hostname: eureka7002.com  #eureka服务端的实例名字
      client:
        register-with-eureka: false    #表识不向注册中心注册自己
        fetch-registry: false   #表示自己就是注册中心,职责是维护服务实例,并不需要去检索服务
        service-url:
          defaultZone: http://eureka7001.com:7001/eureka/    #设置与eureka server交互的地址查询服务和注册服务都需要依赖这个地址
    7002 yml

    主启动

    复制cloud-eureka-server7001的主启动类到7002即可

    服务提供者和消费者(支付、订单模块)入驻进Eureka集群

    yml

    eureka:
      client:
        register-with-eureka: true
        fetchRegistry: true
        service-url:
          defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka  #集群版
        #      defaultZone: http://localhost:7001/eureka
    支付、订单服务 的 YML Eureka 块


    服务提供者(支付服务)集群配置

    参考cloud-provider-payment8001 新建cloud-provider-payment8002

    复制8001 的所有东西到 8002(yml的端口独有、pom中的基础 artifactId 独有

     

     

     

     修改8001/8002的Controller,返回的数据中,带上服务端口号

     

    服务提供者(cloud-provider-payment8001 和 cloud-provider-payment8002)的负载均衡

    修改服务消费者(cloud-consumer-order8080)访问服务提供者的地址,修改为服务提供者的微服务名称

    使用 @LoadBalanced 注解赋予 RestTemplate 负载均衡的能力

    actuator微服务信息完善

    主机名称:服务名称修改、访问信息有IP提示:

    在微服务客户端(两个服务提供者,一个服务消费者)的YML中添加如下配置

     

    8002 和 8080 也一样: 

     

    结果:

     

     注意:要实现这些图形化的展现和监控,必须要导入下面的这两个包,不然这些信息完善就没有效果。

     

    整体测试:

    启动EurekaServer,7001/7002服务

    启动服务提供者provider,8001/8002服务

    启动服务消费者 consumer 8080 服务

     访问Eureka7001 和 7002

    访问 consumer 8080 的接口

    结果:以轮询的方式交替访问两个服务提供者

  • 相关阅读:
    常用的逻辑控制器。
    map集合迭代。
    [译]如何在.NET Core中使用System.Drawing?
    使用.Net Core 2.1开发Captcha图片验证码服务
    ife 零基础学院 day 2
    ife 零基础学院 day 1
    Visual Studio 2017
    Visual Studio 2017
    在Windows 10上利用seafile搭建个人云服务
    Web网站配置Gzip,压缩js css文件
  • 原文地址:https://www.cnblogs.com/y3blogs/p/13402335.html
Copyright © 2011-2022 走看看