SpringCloud学习(1)

今天学习谷粒商城的openfeign远程调用的时候,启动项目后报错

nested exception is java.lang.IllegalStateException: No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalancer?

后来添加了loadbalancer依赖后仍然报错,信息主要是和ribbon和调用接口错误,后来搜到具体原因,原来在springcloud将负载均衡的组件从ribbon替换为loadbalancer,由于谷粒商城项目整合了nacos,nacos中又依赖了netflix的ribbon,两者发生了冲突,只需要在nacos依赖中把ribbon依赖移除掉即可

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    <exclusions>
        <!-- 将ribbon排除 -->
        <exclusion>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
        </exclusion>
    </exclusions>
</dependency>

移除掉ribbon后成功运行

但在有些帖子中看到去除后续会导致无法实现负载均衡,目前每个微服务只有一个实例,到后续模拟多个实例再测试负载均衡是否成功实现

posted @ 2023-01-17 09:57  li胡不归  阅读(31)  评论(0)    收藏  举报