jmeter 压测时出现请求失败的情况,但是看nginx文档,
Old worker processes, receiving a command to shut down, stop accepting new connections and continue to service current requests until all such requests are serviced. After that, the old worker processes exit。
nginx 将old请求处理完成后才会切换到新的worker processes 上,但是jmeter的确产生了请求失败的情况,使用wireshark抓了个包,发现产生了 tcp reset,下面具体说明产生此情况的原因。
使用的测试方式导致: 我使用的压测方式为

在使用jmeter进行压力测试时遇到请求失败的问题,研究发现当nginx通过`nginx -s reload`命令重载时,旧的工作进程在处理完现有请求后才退出。然而,由于持续的HTTP持久连接,jmeter在旧工作进程关闭连接前尝试发送新的请求,导致tcp reset。Wireshark抓包分析显示,nginx关闭连接后,客户端仍尝试发送请求,从而引发错误。解决方案可能涉及调整压测策略或nginx配置以避免在重载期间的连接冲突。
最低0.47元/天 解锁文章
6381

被折叠的 条评论
为什么被折叠?



