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

【SpringCloud GateWay】Connection prematurely closed BEFORE response 报错分析与解决方案

一、背景

今天业务方调用我们的网关服务报错:

Connection prematurely closed BEFORE response

二、原因分析

在这里插入图片描述

三、解决方案

第一步:

增加 SCG 服务的JVM启动参数,调整连接获取策略。

将连接池获取策略由默认的 FIFO(先进先出)变更为 LIFO(后进先出)。

基于 LRU(最近最少使用)算法思想,LIFO 策略可确保当前最活跃的"热点连接"优先被复用,而长期未被使用的空闲连接将自然沉淀至队列末端,便于后续回收机制处理。

-Dreactor.netty.pool.leasingStrategy=lifo

第二步:

修改 SCG服务的空闲连接回收阈值
设置空闲连接的存活时间(maxIdleTime)需满足:
空闲时间阈值 < 后端服务连接超时时间(connectTimeout)。

使连接池的回收动作先于后端服务的强制断连,防止获取到即将被后端主动关闭的"僵尸连接",避免出现请求中途因连接被重置导致的异常

spring:cloud:gateway:httpclient:pool:maxIdleTime: 10000(根据需要调整)

设置之后观察线上环境,没有再发生报错

相关文章:

  • [Android] WPS Office11.4.1.6政务定制版
  • windows使用bat脚本激活conda环境
  • Docker + Watchtower 实现容器自动更新:高效运维的终极方案
  • Linux 信号(下篇)
  • 趣味编程:梦幻万花筒
  • QT人工智能篇-opencv
  • QT聊天项目DAY09
  • 基于开源链动2+1模式AI智能名片S2B2C商城小程序的分销价格管控机制研究
  • 【icpc陕西省赛】树的最大深度+基环树找环的大小
  • 当体育数据API遇上WebSocket:一场技术互补的「攻防战」
  • AI Agent开发第58课-使用梯度提升预测门店早餐预订取消率高的原因和分析
  • 水印落幕 7.0 | 专门用于去除图片和视频中水印的工具,支持自定义水印添加
  • jQuery:全面指南与深度解析
  • Kepware 连接Modbus TCP/IP
  • C语言初阶--数组
  • 005 权限的理解
  • leetcode刷题日记——随机链表的复制
  • Prompt(提示词)工程师,“跟AI聊天”
  • 约瑟夫josephu问题
  • 2025-05-07 Unity 网络基础8——UDP同步异步通信
  • “拼好假”的年轻人,今年有哪些旅游新玩法?
  • 金地集团:今年前4个月实现销售额109.3亿元,同比下降52.44%
  • 欧盟公布对美关税反制清单,瞄准美国飞机等产品
  • 2025江西跨境电子商务发展交流会召开,探索行业发展新趋势
  • 联想发布超级智能体矩阵,杨元庆:美国关税影响反映在产品定价上,未来不确定性很大
  • 男子煎服15克山豆根中毒送医,医生:不能盲目相信偏方