Feign消费服务(三)

Feign是一款声明式的WebService客户端,使WebService调用更简洁。整合Ribbon和Hystrix,提供HTTP请求模板,仅需定义接口和注解即可完成服务请求。特性包括插拔式注解支持、HTTP编码器和解码器、Hystrix Fallback、Ribbon负载均衡及HTTP压缩。
摘要由CSDN通过智能技术生成

Feign 是一个声明式的 Web Service 客户端,它的目的就是让 Web Service 调用更加简单。它整合了 Ribbon 和 Hystrix,从而让我们不再需要显式地使用这两个组件。Feign 还提供了 HTTP 请求的模板,通过编写简单的接口和插入注解,我们就可以定义好 HTTP 请求的参数、格式、地址等信息。Feign 会完全代理 HTTP 的请求,我们只需要像调用方法一样调用它就可以完成服务请求。

Feign 具有如下特性:

  • 可插拔的注解支持,包括 Feign 注解和 JAX-RS 注解
  • 支持可插拔的 HTTP 编码器和解码器
  • 支持 Hystrix 和它的 Fallback
  • 支持 Ribbon 的负载均衡
  • 支持 HTTP 请求和响应的压缩

使用Feign消费服务(基于之前Eureka的服务注册中心):

1.创建服务,添加依赖和配置文件

主要依赖:client,web和openfeign

添加配置文件(端口7005,服务名:service-feign):

2.注解开启Feign的功能

主要注解@EnableFeignClients开启Feign的功能。

3.启动并测试

添加一个接口,@FeignClient表示要调用的服务(eureka-producer)

添加controller调用service接口

启动服务并访问(http:localhost/7005/helloFeign?name=feign):​​​​​​​

可以看到服务注册中心的服务:​​​​​​​

多次刷新浏览器访问,可以看到后台控制台打印记录,轮询访问端口7001和7002的服务,

也达到了远程服务调用和负载均衡的效果(同restTemplate+Ribbon的效果)

 

源码地址:https://github.com/wxkhz/springcloud

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值