zoukankan      html  css  js  c++  java
  • (六)SpringCloud初级篇——Eureka服务注册与发现:集群Eureka构建步骤

    Eureka集群原理说明

        解决办法: 搭建Eureka注册中心集群,实现负载均衡+故障容错
    

    Eureka集群环境构建步骤

    新建cloud-eureka-server7002

    参考cloud-eureka-server7001,我是在本地磁盘完成的复制相关包及配置文件

    改POM

    <dependencies>
        <!--eureka-server-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
        </dependency>
        <dependency>
            <groupId>com.sunyan.springcloud</groupId>
            <artifactId>cloud-api-common</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <!--一般为通用配置-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
    

    修改映射配置

    1.找到C:WindowsSystem32driversetc路径下的hosts文件
    2.修改映射配置添加hosts文件
    127.0.0.1 eureka7001.com
    127.0.0.1 eureka7002.com
    这里win10修改hosts文件遇到问题,参考Windows系统修改Hosts文件
    3.刷新hosts文件
    ipconfig /flushdns

    写YMl

    以前单机

    7001

    7002

    此处注意yml文件除了注意空格缩进,还要注意单词不要写错,我的default就写成了defautl。。。

    主启动

    测试

    启动Eureka7001、Eureka7002
    分别用域名访问
    http://eureka7001.com:7001/
    http://eureka7002.com:7002/

    将支付服务8001微服务发布到上面2台Eureka集群配置中

    YML

    eureka:
      client:
        register-with-eureka: true
        fetch-registry: true
        service-url:
          # 集群版
              defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
    

    将订单服务80微服务发布到上面2台Eureka集群配置中

    YML

    defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
    

    测试01

    先要启动EurekaServer,7001/7002服务

    再要启动服务提供者provider,8001

    再要启动消费者,80

    http://localhost/consumer/payment/get/2

    相互注册

    支付服务提供者8001集群环境搭建

    新建cloud-provider-payment8002

    参考cloud-provider-payment8001

    改POM

    YAML

    主启动

    业务类

    复制8001

    修改8001/8002的controller

    负载均衡

    bug

    查询刷新网页,一直是8001
    订单服务访问地址不能写死

    微服务名称

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

    ApplicationContextBean

    Ribbon的负载均衡功能

    测试02

    先要启动EurekaServer,7001/7002服务

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

    http://localhost/consumer/payment/get/2

    结果

    负载均衡效果达到
    8001/8002端口交替出现

    Ribbon和Eureka整合后

    Consumer可以直接调用服务而不用再关心地址和端口号,且该服务还有负载功能了。

  • 相关阅读:
    AJAX异步传输——以php文件传输为例
    js控制json生成菜单——自制菜单(一)
    vs2010中关于HTML控件与服务器控件分别和js函数混合使用的问题
    SQL数据库连接到服务器出错——无法连接到XXX
    PHP错误:Namespace declaration statement has to be the very first statement in the script
    【LeetCode】19. Remove Nth Node From End of List
    【LeetCode】14. Longest Common Prefix
    【LeetCode】38. Count and Say
    【LeetCode】242. Valid Anagram
    【LeetCode】387. First Unique Character in a String
  • 原文地址:https://www.cnblogs.com/sunyanblog/p/12797018.html
Copyright © 2011-2022 走看看