首页 > 解决方案 > 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"'

你能告诉我为什么这些不一样,哪个是正确的响应时间?

标签: flaskunixcurlgunicorn

解决方案


推荐阅读