You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JMeter压测出现Bad chunk header异常排查求助

JMeter负载测试出现MalformedChunkCodingException的原因分析

这个异常的核心原因是HTTP分块传输编码格式不规范,具体拆解如下:

  • 服务器返回的响应违反分块编码规则
    HTTP分块传输时,每个数据块开头必须是十六进制的块大小(后跟CRLF),再是块内容,最后以空块结束。从异常信息里的Bad chunk header能看到,本该是块大小的位置出现了实际的响应内容(比如你的{"...<<My Response>>;,"desc":"Success"}}),说明服务器输出分块响应时,没有正确写入块大小头部,直接输出了业务响应数据,导致JMeter按分块解析逻辑处理时触发错误。

  • 服务器高负载下的输出逻辑异常
    单请求场景可能正常,但负载测试时,服务器的HTTP组件(如Web容器、业务框架)在并发处理时出现BUG:比如输出流未完成分块头部写入就开始输出内容,或是并发场景下分块编码处理逻辑出现竞态问题,导致响应格式混乱。

  • 排除JMeter自身问题
    既然服务器日志无报错且JMeter实际接收到了响应内容,说明问题不在JMeter的请求或解析逻辑,而是服务器返回的响应格式不符合HTTP分块传输的标准规范。

验证方式

可以用抓包工具捕获异常时的HTTP响应,检查:

  • 响应头是否包含Transfer-Encoding: chunked
  • 响应体开头是否有合法的十六进制块大小(而非直接出现业务响应内容)

内容的提问来源于stack exchange,提问作者someone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 11:40:32