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

Flask+Waitress服务Post请求响应时长突增问题排查咨询

问题背景与现象

我在项目中需要将600x600分辨率、约700kB的PNG图片以字节形式上传至接口并处理,要求严格控制响应时长。当前基于Flask搭建单接口服务,使用Waitress部署。

核心问题:接口响应时长偶尔会突然提升一个数量级,可能引发超时类严重错误。通过cProfile分析Post请求发现,时长突增时,_socket.socket的sendall和recv_into方法耗时远超正常水平:

正常情况性能数据

ncalls  tottime  percall  cumtime  percall filename:lineno(function)
     2    0.000    0.000    0.000    0.000 {method 'sendall' of '_socket.socket' objects}
     1    0.004    0.004    0.004    0.004 {method 'recv_into' of '_socket.socket' objects}

突增情况性能数据

ncalls  tottime  percall  cumtime  percall filename:lineno(function)
     2    0.008    0.004    0.008    0.004 {method 'sendall' of '_socket.socket' objects}
     1    0.012    0.012    0.012    0.012 {method 'recv_into' of '_socket.socket' objects}

已尝试操作与补充信息

  • 已提供可复现问题的代码(app.py、wsgi.py、send.py)
  • 尝试设置TCP_NODELAY套接字选项,但无效果

依赖版本

python==3.8.18

Flask==3.0.2
numpy==1.24.4
pillow==10.2.0
requests==2.31.0
waitress==3.0.0

性能测试结果

三次独立1000张图片测试的性能图表:

  • 第一次测试图表
  • 第二次测试图表
  • 第三次测试图表

现咨询该突增现象的原因及解决办法。


内容的提问来源于stack exchange,提问作者M.Talarski

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 01:55:04