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

Spring Cloud 版本升级遇坑记:OpenFeignClient与Gateway的恩怨情仇

Spring Cloud 版本升级遇坑记:OpenFeignClient与Gateway的恩怨情仇
近日,在对项目中的 Spring Boot、Spring Cloud 以及 Spring Cloud Alibaba 进行版本升级时,遭遇了一个令人头疼的问题:Spring Cloud Gateway 在运行时一直卡住,无法正常启动。经过一番折腾,终于找到了问题的症结所在,下面就来分享一下这个问题的解决过程。

升级详情

本次升级涉及以下组件:

Spring Boot 升级到 2.7.17
Spring Cloud 升级到 2021.0.8
Spring Cloud Alibaba 升级到 2021.0.4.0
遭遇问题

在升级完成后,发现 Spring Cloud Gateway 无法正常启动,一直卡在启动过程中。

探究原因

在排查过程中,发现,只要使用 @Autowired 注入了 OpenFeignClient,Gateway 就无法正常启动。

解决方法与注意事项

经过一系列尝试,总结出了以下几个注意事项:

解决方法与注意事项:

1、使用@Lazy进行懒加载:当注入OpenFeignClient时,务必使用@Lazy注解,确保在Gateway启动时不会过早实例化,避免启动卡住的问题。
2、FeignClient的异步调用:确保FeignClient采用异步调用方式,利用Future模式,避免同步调用导致的线程异常。
3、开启OpenFeign功能:使用@EnableFeignClients注解,确保OpenFeign功能在项目中的正常运行。
4、开启异步执行功能:使用@EnableAsync注解,确保异步调用的正常执行,否则@Async注解将无法生效。
解决实例

在这里插入图片描述

http://www.lryc.cn/news/242581.html

相关文章:

  • 面试:Docker相关问题
  • 移动端浏览器 jquery 获取 pdf blob文件流 预览pdf
  • Redis并发问题解决方案
  • 读取两个文件夹里不同名的文件,处理映射不对应的文件
  • SpringCloud原理-OpenFeign篇(四、请求原理)
  • 什么是工业物联网(IOT)?这样的IOT平台你需要吗?——青创智通
  • MTK Pump Express 快速充电原理分析
  • leetcode刷题记录——1991. 找到数组的中间位置
  • 跨域攻击分析和防御(上)
  • GEE:梯度提升树(Gradient Boosting Tree)分类教程(样本制作、特征添加、训练、精度、参数优化、贡献度、统计面积)
  • ubuntu22.04 arrch64版在线安装redis
  • 篮桥云课-摆玩具
  • 【python】python进阶知识点
  • LeetCode算法题解(动态规划)|LeetCode322. 零钱兑换、LeetCode279. 完全平方数
  • Python Web开发基础知识篇
  • 企业计算机服务器中了360勒索病毒怎么办,360勒索病毒解密文件恢复
  • LeetCode无重复字符的最长字符串的Java实现
  • opencv-图像平滑
  • 【开源】基于Vue.js的天然气工程运维系统的设计和实现
  • 数据丢失抢救神器之TOP10 Android 数据恢复榜单
  • 梨花声音教育,动作电影中配音也能带来听见“冲击力”
  • Elaticsearch学习
  • 【腾讯云云上实验室】向量数据库+LangChain+LLM搭建智慧辅导系统实践
  • 从0开始学习JavaScript--深入了解JavaScript框架
  • 【教3妹学编程-算法题】二叉树中的伪回文路径
  • 快速上手Banana Pi BPI-M4 Zero 全志科技H618开源硬件开发开发板
  • Node.js入门指南(三)
  • Leetcode—2824.统计和小于目标的下标对数目【简单】
  • 【基础架构】part-2 可扩展性
  • [SWPUCTF 2021 新生赛]no_wakeup