在SpringCloud架构体系中,微服务间的通信是基于Feign调用。而在实际使用Feign的过程中我们大概率会面临下面几个问题:
- Feign客户端放在消费端还是独立一个api层?
- Feign调用的接口如何要不要进行包装?
- Feign如何抓取业务生产端的业务异常?
这篇文章我们就来一起探讨一下这几个问题,希望看完能对你有所帮助。
首先我们先看看Feign的调用方式如何抉择?
Feign的调用方式如何选择?
总体来说,Feign的调用方式分为两大类:
在生产端API中声明Feign客户端
如上,消费端服务直接依赖生产端提供的API包,然后通过@Autowired
注解注入,就可以直接调用生产者提供的接口。
这样做的 好处 是:简单方便,消费端直接使用生产者提供的Feign接口即可。
这样做的 坏处 也很明显:消费端获取到的接口是生产者提