flask - Gunicorn:guicorn.log 中显示的响应时间与触发时间 curl 的时间不同
问题描述
我在 unix 机器上运行带有 gunicorn 的烧瓶应用程序。
当我随时间执行 Curl 命令时,我得到以下响应时间(0m3.506s 和 0m3.501s) - 对于具有相同有效负载的 2 个 curl 命令。
[usr@smsrvr fldr]$ time curl -X POST http://localhost:8000/api -H "Content-Type: application/json" -H "Accept: application/json" -d "@/newPayload.json" > /tmp/py1000.json
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1936k 100 1930k 100 6662 552k 1905 0:00:03 0:00:03 --:--:-- 552k
real 0m3.506s
user 0m0.005s
sys 0m0.010s
[usr@smsrvr fldr]$ time curl -X POST http://localhost:8000/api -H "Content-Type: application/json" -H "Accept: application/json" -d "@/newPayload.json" > /tmp/py1000.json
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1936k 100 1930k 100 6662 552k 1907 0:00:03 0:00:03 --:--:-- 552k
real 0m3.501s
user 0m0.005s
sys 0m0.009s
而当我查看 gunicorn 日志时,我看到了与触发的 2 个 curl 命令相对应的响应时间(以毫秒为单位)(0.136948, 0.113905)。
[usr@smsrvr fldr]$ grep -i curl gunicorn.log
127.0.0.1--[07/Jun/2021:17:16:14 +0000]"POST /api HTTP/1.1"2001976820"-""curl/7.29.0" "136948" "1976820" "0.136948"
127.0.0.1--[07/Jun/2021:17:16:24 +0000]"POST /api HTTP/1.1"2001976820"-""curl/7.29.0" "113905" "1976820" "0.113905"
Gunicorn is running with the log format
--access-logfile gunicorn.log --access-logformat '%(h)s%(l)s%(u)s%(t)s"%(r)s"%(s)s%(b)s"%(f)s""%(a)s" "%(D)s" "%(B)s" "%(L)s"'
你能告诉我为什么这些不一样,哪个是正确的响应时间?
解决方案
推荐阅读
- amazon-web-services - 在 AWS Cloudwatch 仪表板上准确绘制 ALB RequestPerCountPerTarget
- python - 在函数中编写循环会更改输出
- python - Python Gtk TreeView 列数据显示
- javascript - Gulp 手表不看
- android - 如何向 Android Studio 操作工具栏添加图标?
- ios - 如何在大型导航栏上使用图像作为标题?
- python - Python:为什么函数返回一个字典,其中所有值都由赋值填充?
- java - 使用 java 8 steam 查找两个列表之间的匹配行并映射到另一个对象
- python - 使用 QDesktopService 显示本地 html 文件
- c# - 基于locked bitmap、getpixel和优化辅助函数提高视频校正算法的速度