SpringCloud Alibaba微服务实战三十六 - 这大概算是使用Feign的正确姿势。

Posted 飘渺Jam

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud Alibaba微服务实战三十六 - 这大概算是使用Feign的正确姿势。相关的知识,希望对你有一定的参考价值。

在SpringCloud架构体系中,微服务间的通信是基于Feign调用。而在实际使用Feign的过程中我们大概率会面临下面几个问题:

  • Feign客户端放在消费端还是独立一个api层?
  • Feign调用的接口如何要不要进行包装?
  • Feign如何抓取业务生产端的业务异常?

这篇文章我们就来一起探讨一下这几个问题,希望看完能对你有所帮助。

首先我们先看看Feign的调用方式如何抉择?

Feign的调用方式如何选择?

总体来说,Feign的调用方式分为两大类:

在生产端API中声明Feign客户端

如上,消费端服务直接依赖生产端提供的API包,然后通过@Autowired注解注入,就可以直接调用生产者提供的接口。

这样做的 好处 是:简单方便,消费端直接使用生产者提供的Feign接口即可。

这样做的 坏处 也很明显:消费端获取到的接口是生产者提供给所有服务的接口列表,当某一生产者接口很多时就会很混乱;而且熔断降级类也在生产端,消费端在调用时由于包路径可

以上是关于SpringCloud Alibaba微服务实战三十六 - 这大概算是使用Feign的正确姿势。的主要内容,如果未能解决你的问题,请参考以下文章

SpringCloud Alibaba微服务实战三十一 - 业务日志组件

SpringCloud Alibaba微服务实战三十三 - 集成灰度发布

SpringCloud Alibaba微服务实战三十四 - 隐私接口禁止外部访问

SpringCloud Alibaba微服务实战三十六 - 这大概算是使用Feign的正确姿势。

SpringCloud Alibaba微服务实战三十七 - Oauth2自定义登录接口

SpringCloud Alibaba微服务实战三十七 - Oauth2自定义登录接口