• eureka迁移到nacos--双服务中心注册


    服务注册中心的迁移有多种方式,官网使用nacos sync,还有民间开发的双注册中心组件eureka-nacos-proxy,但是我用了不太顺利,所以用的是阿里巴巴的双注册中心组件edas-sc-migration-starter

    spring boot:2.5.3

    1. 引入依赖
    <dependency>
        <groupId>org.springframework.cloudgroupId>
        <artifactId>spring-cloud-starter-netflix-eureka-serverartifactId>
    dependency>
    <dependency>
        <groupId>org.springframework.bootgroupId>
        <artifactId>spring-boot-starter-actuatorartifactId>
    dependency>
    <dependency>
        <groupId>com.alibaba.cloudgroupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
        <version>2.0.4.RELEASEversion>
    dependency>

    <dependency>
        <groupId>com.alibaba.cloudgroupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-configartifactId>
        <version>2.0.4.RELEASEversion>
    dependency>
    <dependency>
        <groupId>com.alibaba.edasgroupId>
        <artifactId>edas-sc-migration-starterartifactId>
        <version>1.0.2version>
    dependency>
    • 1
    1. 正常启动即可发现两边都已经注册

    2. 如果要用open feign,需要在启动类排除ribbon自动配置,否则服务间调用会报错

    alt
    2021-08-18 16:00:58.368 ERROR 351892 --- [nio-8081-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.AbstractMethodError: org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.choose(Ljava/lang/String;Lorg/springframework/cloud/client/loadbalancer/Request;)Lorg/springframework/cloud/client/ServiceInstance;] with root cause

    java.lang.AbstractMethodError: org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.choose(Ljava/lang/String;Lorg/springframework/cloud/client/loadbalancer/Request;)Lorg/springframework/cloud/client/ServiceInstance;
     at org.springframework.cloud.openfeign.loadbalancer.FeignBlockingLoadBalancerClient.execute(FeignBlockingLoadBalancerClient.java:88) ~[spring-cloud-openfeign-core-3.0.3.jar:3.0.3]
    • 1

    点进去可以看到 应该是负载均衡时选择服务出现错误

    alt

    解决方案1. 在启动类屏蔽ribbon自动配置类

    alt

    此时feign会默认调用nacos的服务

    alt

    方案2. 阿里云官网看的,但是我试了会报另一个错误,所以就采用方案1

    alt

    本文由 mdnice 多平台发布

  • 相关阅读:
    软件开发行业的乱象——低价引流中途收费?299?399?
    【单片机基础】ADC0832详解
    Kubernetes 架构核心组件工作原理解析
    Linux系统中实现便捷运维管理和远程访问的1Panel部署方法解析
    【笔记】关于brew install ffmpeg出现问题解决
    实验5 跨交换机实现VLAN
    Frida使用与解题
    2022年全球市场抗菌整理剂总体规模、主要生产商、主要地区、产品和应用细分研究报告
    Jenkins结合gitlab自动化持续集成
    vue.js表单
  • 原文地址:https://blog.csdn.net/zongzhankui/article/details/132580682