springcloud feign使用,springcloud feignclient
目录
前言一、基本使用1.引依赖2.加注解3.声明接口4.调用二、进阶1.日志配置2.性能优化
前言
假装可以替代客户端完成可编程式接口调用,并且内部集成带状物实现了负载均衡
一、基本使用
1.引依赖
pom文件增加openfeign依赖
!-feign-dependency groupIdorg.springframework.cloud/groupId artifact id spring-cloud-starter-open feign/artifact id/dependency
2.加注解
启动类上增加@EnableFeignClients注解
@ EnableFeignClients @ spring boot application public class order application { public static void main(String[]args){ spring application。运行(订单应用程序。class,args);}}
3.声明接口
创建客户包,包下放使用到的接口
包com。CX明星报。客户;导入com。阿里巴巴。快速JSON。JSON对象;导入org。spring框架。云。打开假装。假装客户;导入org。spring框架。网络。绑定。注释。获取映射;导入org。spring框架。网络。绑定。注释。路径变量;导入org。spring框架。网络。绑定。注释。请求映射;@ FeignClient( books China-service )@请求映射(/books China )公共接口图书中国客户端{ @ get mapping(/spiderBookList/{ search key }/{ pageNo } )JSON对象搜索图书中国(@ path变量( search key )字符串搜索关键字,@ path变量( pageNo )整数pageNo);}直接把你需要调用的微服务里的控制器类复制一份过来,修修改改就行了ps:1 .@ FeignClient("图书中国-服务"):访问春天。申请。中国图书网-服务的微服务2.@RequestMapping 、@GetMapping 、@PathVariable用来映射地址,和控制器中的用法一样3.上面这个接口对应的就是图书中国-服务微服务下映射地址为/图书中国/蜘蛛书单/{搜索关键字}/{ pageno }的控制器类方法
4.调用
测试类如下
包com。CX明星;导入com。阿里巴巴。快速JSON。JSON对象;导入com。CX明星报。客户。图书中国客户端;导入龙目岛。外部人员。SLF 4j。SLF 4j;导入org。spring框架。豆子。工厂。注释。自动连线;导入org。spring框架。靴子。测试。语境。弹簧靴测试;@ Slf4j @ spring boot test class OrderApplicationTests { @ Autowired private books China client books China client;void booksChinaTest() { //参数String searchKey=东野圭吾;整数pageNo=1;//调用JSON object books JB=books中国客户端。搜索中国图书(搜索关键字,页码);日志。信息(书籍JB。tostring());}}
二、进阶
1.日志配置
应用文件中加入配置
费根:客户端:配置:默认值: #默认值全局配置,局部配置的话可以换成请求的服务名称记录器级别:无#日志级别无基本标题完整:1。无:没有日志2.基本:记录超文本传送协议(超文本传输协议的缩写)请求发送目标、发送时间、返回时间、总耗时等信息3.标题:在基本的基础上记录请求头和响应头信息4.完整:在基本的和头球的基础上记录请求体和响应体信息5.上线后为了优化性能日志级别尽量用没有人或者基本的
2.性能优化
假装底层客户端默认实现是URLConnection,不支持连接池,每次超文本传送协议(超文本传输协议的缩写)请求都要三次握手,断开时四次挥手,有点浪费性能,可以用使用替代通过
一下午引入依赖
!假装连接池-依赖关系groupIdio.github.openfeign/groupId artifactIdfeign-http客户端/artifactId/依赖关系2应用程序文件中加入配置
feign : http客户端: enabled : true #开启假装对客户端的支持最大连接数: 200 #最大连接数每条路由的最大连接数: 50 #每个请求接口的最大连接数ps:1。最大连接数和每条路由的最大连接数的值需要根据具体情况设定
关于基于Feign实现SpringCloud可编程接口调用的文章到此为止。关于SpringCloud Feign可编程接口调用的更多信息,请搜索热门IT之前的文章或者继续浏览下面的相关文章。我希望你以后能更多地支持流行音乐!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。