feign连续调用两个服务的坑(ribbon服务名解析错误导致404)

问题

feign同一个方法连续调用两个服务的后再次调用方法,导致ribbon服务名解析路径错误,从而返回404;

原因

在这里插入图片描述
如上图定义的myRule这个bean所在的类被@ComponentScans扫描到了,这就是问题出现的原因。。
解释:网上找了Ribbon的使用注意事项,说官网给出ribbon使用负载策略是,务必要保证ribbon的负载代码,所以上图的类不能被@ComponentScans扫描

解决办法

方法一:删除上图的那个类

方法二:
修改@ComponentScan,不扫描上图那个类(MyselfRule.class)

下面展示一些 内联代码片

@ComponentScan(value = {"com.**"}
,excludeFilters = @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE,value = {MyselfRule.class})
)
@EnableFeignClients
@SpringCloudApplication
@EnableSwagger2
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
    }
}
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值