一 概述
OpenFeign是一个声明式RESTful网络请求客户端,使得编写Web服务客户端更加方便和快捷。只需要使用OpenFeign提供的注解修饰定义网络请求的接口类,就可以通过使用该接口的实例发送RESTful风格的网络请求。OpenFeign还可以集成Ribbon和Hytrix来提供负载均衡和网络断路器的功能。
二 RESTful网络请求
RESTful网络请求是指RESTful风格的网络请求,其中REST是Resource Representational State Transfer的缩写,即“资源表现层状态转移”。
Resource代表网络资源。所谓"资源"是网络上的一个实体,或者说网络上的一个具体信息。它可以是一段文字,一首歌曲,一种服务,可以使用一个URI指向它,每种"资源"对应一个URI。
三 OpenFeign简介
OpenFeign会根据带有注解的函数信息构建出网络请求的模板,在发送网络请求之前,OpenFeign回将函数的参数值设置到这些请求模板中。
OpenFeign只能支持基于文本的网络请求,但是它可以极大简化网络请求的表现,方便编程人员快速构建自己的网络请求应用。
OepnFeign架构实例
1. 服务注册中心:OpenFeign可以配合Eureka等服务注册中心同时使用。Eureka作为服务注册中心,为OpenFeign提供服务端信息的获取,比如说服务的IP地址和端口。
2. 服务提供者:Spring Cloud OpenFeign是声明式RESTful网络请求客户端,所以对服务提供者的实现方式没有任何影响。服务提供者只需要提供对外的网络请求接口就可,至于其具体实现既可以使用SpringMVC,也可以使用Jersey。只需要确保该服务提供者被注册到服务注册中心上即可。
3. 服务消费者:OpenFeign是声明式RESTful客户端,所以构建OpenFeign项目的关键在于构建服务消费者。
暂时复习至此,待续!