学习spring cloud记录12-Feign常用自定义配置
前言
Feign被springboot自动装配,但是Feign也提供了可自定义修改配置,常用的修改是修改日志级别等,下面记录常用的配置。
知识
| 类型 | 作用 | 说明 |
| feign.Looger.Level | 修改日志级别 | 包含不同的四种级别:NONE,BASIC,HEADERS,FULL |
| feign.codec.Decoder | 响应结果解析器 | HTTP远程调用的接口进行解析,列如解析json为对象 |
| feign.codec.Encoder | 请求参数编码 | 将请求参数编码,便于通过http请求发送 |
| feign.Contract | 支持注解格式 | 默认是SpringMVC注解 |
| feign.Retryer | 失败重试机制 | 请求失败后重试,默认不重试,但是底层依赖于ribbon,ribbon是有重试的 |
代码实现(修改级别)
方式一:基于配置文件
添加下列配置即可:
feign:
client:
config:
default: #如果是default就是全局,如果是服务名,就是单独
loogerLevel: FULL
方式二:基于java代码
声明一个类:
package priv.sinoam.demoorder.demo.config; import feign.Logger;
import org.springframework.context.annotation.Bean; public class FeignConfiguration {
@Bean
public Logger.Level logLevel(){
return Logger.Level.BASIC;
}
}
全局配置:
在启动类添加
@EnableFeignClients(defaultConfiguration = FeignConfiguration.class)
局部配置:
在客户端类添加
@FeignClient(value = "demo-user", configuration = FeignConfiguration.class)
Feign新能优化
Feign底层客户端的实现:
- URLConnection:默认实现,不支持连接池
- Apache HttpClient:支持连接池
- OKHttp:支持连接池
Feign新能优化主要包括:
- 使用连接池替代默认的URLConnection
- 日志级别:最好使用basic或者none
实现
以HttpClient为例
引入依赖
<dependency>
<groupId>io.github.openfeign</groupId>
<artifactId>feign-httpclient</artifactId>
</dependency>
配置连接池
feign:
httpclient:
enabled: true # 支持httpClient 默认为true
max-connections: 200 #最大连接数
max-connections-per-route: 50 # 单个路径的最大连接数
问题
不管怎么配置,都没有打印日志,还没有找到解决办法
学习spring cloud记录12-Feign常用自定义配置的更多相关文章
- Spring Cloud(Dalston.SR5)--Feign 声明式REST客户端
Spring Cloud 对 Feign 进行了封装,集成了 Ribbon 并结合 Eureka 可以实现客户端的负载均衡,Spring Cloud 实现的 Feign 客户端类名为 LoadBala ...
- spring cloud 2.x版本 Gateway自定义过滤器教程
前言 本文采用Spring cloud本文为2.1.8RELEASE,version=Greenwich.SR3 本文基于前两篇文章eureka-server.eureka-client.eureka ...
- Spring Cloud 入门 之 Feign 篇(三)
原文地址:Spring Cloud 入门 之 Feign 篇(三) 博客地址:http://www.extlight.com 一.前言 在上一篇文章<Spring Cloud 入门 之 Ribb ...
- spring cloud要点简介及常用组件
spring cloud基于spring boot spring cloud是通过包装其他技术框架实现的,例如OSS组件,实现了一套通过基于注解.java配置和基于模板开发的微服务框架. spring ...
- Spring Cloud ZooKeeper集成Feign的坑2,服务调用了一次后第二次调用就变成了500,错误:Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is com.n
错误如下: 2017-09-19 15:05:24.659 INFO 9986 --- [ main] s.c.a.AnnotationConfigApplicationContext : Refre ...
- 0.9.0.RELEASE版本的spring cloud alibaba sentinel+feign降级处理实例
既然用到了feign,那么主要是针对服务消费方的降级处理.我们基于0.9.0.RELEASE版本的spring cloud alibaba nacos+feign实例添油加醋,把sentinel功能加 ...
- Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解
前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式(Res ...
- Spring Cloud(十四)Config 配置中心与客户端的使用与详细
前言 在上一篇 文章 中我们直接用了本应在本文中配置的Config Server,对Config也有了一个基本的认识,即 Spring Cloud Config 是一种用来动态获取Git.SVN.本地 ...
- Spring Cloud Alibaba基础教程:Nacos配置的多文件加载与共享配置
前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式> ...
- Spring Cloud Alibaba基础教程:Nacos配置的多环境管理
前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式> ...
随机推荐
- unigui的ServerModule的重要属性【8】
ServerModule是unigui的重要模块. uniGUI 服务器的内部结构. 每个 uniGUI 服务器都有一个ServerModule的副本, 每台服务器创建一次, 同时根据用户活动动态创建 ...
- VScode设置用户代码片段快捷方式
一.创建步骤 a. b. 二.创建模板 { "生成vue模板": { "prefix": "vue", "body": ...
- 康谋方案 | BEV感知技术:多相机数据采集与高精度时间同步方案
随着自动驾驶技术的快速发展,车辆准确感知周围环境的能力变得至关重要.BEV(Bird's-Eye-View,鸟瞰图)感知技术,以其独特的视角和强大的数据处理能力,正成为自动驾驶领域的一大研究热点. 一 ...
- 康谋分享 | aiSim5激光雷达LiDAR模型验证方法(二)
aiSim中的LiDAR是一种基于光线追踪的传感器,能够模拟真实LiDAR发射的激光束,将会生成LAS v1.4标准格式的3D点云,包含了方位角.俯仰角和距离等. aiSim能够模拟LiDAR单态(M ...
- MVVM绑定 填坑,必须在与 DependencyObject 相同的线程上创建 DependencySource
场景:线程里面构建MVVM实体类,实体类包含 Brush 属性时,构建 SolidColorBrush 需要UI线程,否则会报 "必须在与 DependencyObject 相同的线程上创建 ...
- Asp.net core 少走弯路系列教程(二)HTML 学习
前言 新人学习成本很高,网络上太多的名词和框架,全部学习会浪费大量的时间和精力. 新手缺乏学习内容的辨别能力,本系列文章为新手过滤掉不适合的学习内容(比如多线程等等),让新手少走弯路直通罗马. 作者认 ...
- 掌握DevEco Studio模拟器这些“隐藏功能”,让鸿蒙应用调试效率事半功倍
在鸿蒙应用开发过程中,调试环节常常直接影响开发效率与体验.为提升开发者调试的便捷性与效率,华为在DevEco Studio上提供了模拟器功能,它不仅能模拟鸿蒙手机.折叠屏.平板等真实设备的基本功能,还 ...
- SpringBoot事件和监听器
事件和监听器 生命周期监听 场景:监听应用的生命周期 监听器-SpringApplicationRunListener 自定义SpringApplicationRunListener来监听事件: 1. ...
- 工具 | burpgpt
0x00 简介 burpgpt是一款利用AI来检测安全漏洞的burpsuite插件.Burp Suite GPT扩展集成了OpenAI的GPT,以执行额外的被动扫描以发现高度定制的漏洞,并支持运行任何 ...
- 【渗透 Tips】解决Edge的IE模式下无法抓包情况
问题说明 在日常渗透中往往避免不了站点的环境适配问题,有一些站点只能使用IE模式访问,此时便会想着可能使用内置proxy插件代理至抓包软件即可,事实上这并不能很好解决. 如上图所示,即使挂上了yaki ...