当前位置: 首页 > news >正文

微服务springcloud http客户端feign

feign替代RestTemplate

RestTemplate存在问题

  1. 代码可读性差,编程体验不统一
  2. 参数复杂的url难以维护

feign

是一个声明式的http客户端,官方地址:https://github.com/OpenFeign/feign

帮助我们优雅的实现http请求发送

使用

  1. 添加依赖:

  1. 启动添加注解自动装配@EnableFeignClients
  2. 编写接口使用远程调用其他服务接口

自定义配置

虽然自动装配但是允许我们覆盖默认配置

配置feign日志:

  1. 配置文件

全局生效

feign

        client:

                config:

                        default: #全局生效

                                loggerLevel: FULL

局部生效

feign

        client:

                config:

                        userservice: #局部生效 服务名称

                                loggerLevel: FULL

  1. Java代码

性能优化

主要包括

  1. 使用连接池代替默认URLConnection

apache httpclient

okhttp

  1. 日志级别最好basicnone

最佳实践

方式(继承)消费者FeignClient提供controller定义统一接口作为标准----------不推荐 耦合

方式(抽取)FeignClient抽取独立模块并把相关的pojo默认feign配置这个模块提供消费者使用

http://www.dtcms.com/a/299430.html

相关文章:

  • 伟淼科技李志伟:破解二代接班传承困局,系统性方案破除三代魔咒
  • Redis缓存策略以及bigkey的学习(九)
  • C语言——学习笔记
  • 数据结构(4)单链表算法题(上)
  • Linux DNS 服务器正反向解析
  • 深入分析计算机网络传输层和应用层面试题
  • 从压缩到加水印,如何实现一站式图片处理
  • 编程语言Java——核心技术篇(四)集合类详解
  • 从0开始学linux韦东山教程Linux驱动入门实验班(5)
  • C语言中:形参与实参的那些事
  • 分类预测 | MATLAB实现CPO-SVM冠豪猪算法优化支持向量机分类预测
  • 分类预测 | MATLAB实现DBO-SVM蜣螂算法优化支持向量机分类预测
  • pyskl-Windows系统使用自己的数据集训练(一)
  • 《C++ list 完全指南:从基础到高效使用》
  • 【洛谷】单向链表、队列安排、约瑟夫问题(list相关算法题)
  • 扣子(Coze)宣布开源两大核心项目——Coze Studio(扣子开发平台)和Coze Loop(扣子罗盘),附安装步骤
  • ubuntu下docker安装thingsboard物联网平台详细记录(附每张图)
  • 如何在 Ubuntu 24.04 或 22.04 中创建自定义 Bash 命令
  • 商汤InternLM发布最先进的开源多模态推理模型——Intern-S1
  • 【机器学习深度学习】LLamaFactory微调效果与vllm部署效果不一致如何解决
  • 开源智能体框架(Agent Zero)
  • VLAN的划分(基于华为eNSP)
  • Android 蓝牙学习
  • 使用Netty搭建一个网络聊天室
  • ​P1103 书本整理 - 洛谷​
  • 方正小标宋简3.0,可编辑
  • 暑期算法训练.9
  • ArcGIS 2024软件下载及安装教程|ArcGIS软件安装附下载地址|详细安装说明
  • Linux中的线程(Lightweight Processes - LWP)
  • Flowable 实战落地核心:选型决策与坑点破解