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

【SpringCloud | 第2篇】OpenFeign远程调用

文章目录

  • OpenFeign——声明式 REST 客户端
  • 远程调用——第三方API
  • OpenFeign——日志
  • OpenFeign——超时控制
  • OpenFeign——重试机制
  • OpenFeign——拦截器
  • OpenFegin——Fallback(兜底返回)

OpenFeign——声明式 REST 客户端

  • 注解驱动:

    • 指定远程地址:@FeignClient
    • 指定请求方式:@GetMapping、@PostMapping、@DeleteMapping
    • 指定携带数据:@RequestHeader、@RequestParam、@RequestBody
    • 指定结果返回:响应模型

添加依赖:

<dependency><groupld>org.springframework.cloud</groupld><artifactld>spring-cloud-starter-openfeign</artifactld></dependency>

远程调用:

远程调用——第三方API

调用阿里云的API获取某城市的天气。

参照要调用的第三方API接口文档,获取天气的客户端:

注意:@FeignClient 后有指定 url就是向该 url 提交请求,没有则是向指定的注册服务提交请求。

注意:客户端负载均衡和服务端负载均衡的区别?

OpenFeign——日志

官方文档:https://docs.spring.io/spring-cloud-openfeign/reference/4.3/spring-cloud-openfeign.html#feign-logging

在 yaml 配置文件中配置日志级别,配置类中配置日志全量组件

再次请求测试方法,控制台显示远程调用方法的日志信息:

OpenFeign——超时控制

调用的远程服务宕机,读取不到数据

两个主要参数 连接超时(默认10s) 和 读取超时(默认60s) :

设置超时控制的时间:
官方文档:https://docs.spring.io/spring-cloud-openfeign/reference/4.3/spring-cloud-openfeign.html#spring-cloud-feign-overriding-defaults

OpenFeign——重试机制

远程调用超时失败后,还可以进行多次尝试,如果某次成功返回ok,如果多次调用仍然失败则结束调用,返回错误。

官方文档:https://docs.spring.io/spring-cloud-openfeign/reference/4.3/spring-cloud-openfeign.html#spring-cloud-feign-overriding-defaults

OpenFeign——拦截器

  • 实现RequestInterceptor接口
  • 重写 apply 方法,可对拦截的请求添加其它参数

OpenFegin——Fallback(兜底返回)

兜底返回的功能需要整合Sentinel才能实现。

官方文档:https://docs.spring.io/spring-cloud-openfeign/reference/4.3/spring-cloud-openfeign.html#spring-cloud-feign-circuitbreaker-fallback

http://www.cnnetsun.cn/news/5599.html

相关文章:

  • 云原生 Kubernetes 的 API 设计与使用
  • 《GEO AI营销行业报告2025》精要版(解读二)
  • 广州AI办公软件哪家可以落地
  • 如何轻松实现跨语言阅读?智能翻译功能全解析
  • class-transformer实战指南:轻松实现对象与类的智能转换
  • 基于Tensorflow的自训练CNN算法与mobileNet迁移学习:图片及视频垃圾分类系统
  • Docker与LangGraph多Agent部署全攻略(专家级部署方案首次公开)
  • iOS设备激活锁绕过完整指南:AppleRa1n离线解锁方案
  • Vue3 Excel Editor 终极指南:如何快速实现专业级数据表格编辑功能
  • 4大实战技巧深度解析:量化因子归因全流程指南
  • Vibe Coding 的终极意义:从“面向 Jira 编程”到“面向创造力编程”的飞跃!
  • AI提示系统实时反馈机制性能优化:提示工程架构师的6个实战技巧
  • 奥创中心卸载工具下载使用保姆级教程(附下载地址)
  • Wan2.2-T2V-A14B模型在线Demo体验地址及使用说明
  • 自动驾驶学习宝藏:Autoware Universe 中英对照技术文档
  • 资深办公人亲测:批量修改文件名+保留原名,用对工具效率翻倍
  • 行业科普:什么是物流可信数据空间
  • 从进程到协程【深度解析】——必懂的并发编程
  • 麒麟操作系统用户和组管理
  • 淀粉下游应用,从餐桌到工业,无处不在!
  • eventpp终极集成指南:5种快速配置C++事件处理库的方法
  • 项目风险管理 论文框架
  • 30+专业幻灯片模板集:轻松打造精美演示文稿
  • 传统中文手写数据集全面解析与应用指南
  • Host侧算子实现总览-解码Ascend C算子的“CPU端蓝图“
  • 科普多种mfc100u.dll丢失的解决方法!全面了解mfc100u.dll文件
  • Wan2.2-T2V-A14B在新闻摘要视频自动生成中的实验成果
  • 31、互联网用户安全防护全解析
  • 技术日报|Kaiju游戏引擎逆袭夺冠,Claude记忆插件日增779星登榜第三
  • 《2025提示工程从入门到进阶指南》正式发布 | 中科算网算泥社区