一. 问题描述
2024-06-18T08:40:39.858804039Z [2024-06-18 08:40:39 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:332)
2024-06-18T08:40:40.918093090Z [2024-06-18 08:40:40 +0000] [1] [ERROR] Worker (pid:332) was sent SIGKILL! Perhaps out of memory?
二. 原因分析
从报错信息可以看出,gunicorn 的 worker 进程超时导致进程退出重启
默认: 30
默认超过这么多秒的 worker 进程将被杀死并重新启动。
值为正数或 0。将其设置为 0 会通过完全禁用所有 worker 的超时来实现无限超时。
通常,默认值 30 秒就足够了。如果您确定对同步 worker 的影响,则仅将此设置更高。对于非同步 worker,这仅意味着工作进程仍在通信,并且与处理单个请求所需的时间长度无关。
记得按照统一的格式写,不然可能有意料之外的报错
2024-06-19T09:50:32.336042376Z usage: gunicorn [OPTIONS] [APP_MODULE]
2024-06-19T09:50:32.336093028Z gunicorn: error: unrecognized arguments: --timeout 120 app:app