报错截图

在这里插入图片描述

被调用的feign报错截图

在这里插入图片描述

报错代码片段

在这里插入图片描述

报错原因推论

从第一张图可以看出,删除没有问题,而增加和修改就都出现了报错,由于删除和增加的区别在于删除没有进行查询的feign调用,所以这里的出错应该是在查询的feign调用上,而第二种图写在没有收到完整的数据响应,数据没读完就中断了,这里也就想到可能是被熔断了

尝试

  • 关闭熔断
    在这里插入图片描述
  • 结果
    在这里插入图片描述
    在这里插入图片描述
    查询服务那边直接报中断连接异常!
    但此时查询服务还能用
    在这里插入图片描述
    说明这里中断的不是查询服务与数据库的连接
    而是canal微服务和查询微服务的连接。。。。

上网查,还真有和我一样错误的
在这里插入图片描述
他的解决方案是在feign方法的@PathVariable上添加name属性

  • 于是

在这里插入图片描述

在这里插入图片描述

  • 再次测试

在这里插入图片描述
报错依旧。。。。
为证明到底是那一边的的错误,我决定新建一个测试微服务
在这里插入图片描述

  • 结果

在这里插入图片描述
数据获取没问题
那么有问题的就是canal微服务了

解决方法

由于我这里使用的是教程里的依赖包
在这里插入图片描述
maven仓库没有把它收入进入也许就是因为bug太多吧。。。
所以最终我还是决定换一个依赖包用另一种方法来集成cana
[教程地址]

GitHub 加速计划 / ca / canal
28.22 K
7.57 K
下载
alibaba/canal: Canal 是由阿里巴巴开源的分布式数据库同步系统,主要用于实现MySQL数据库的日志解析和实时增量数据订阅与消费,广泛应用于数据库变更消息的捕获、数据迁移、缓存更新等场景。
最近提交(Master分支:3 个月前 )
1e5b8a20 - 2 个月前
ff82fd65 2 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐