Django 应用在 Heroku 中出现工作超时错误

19 投票
2 回答
17352 浏览
提问于 2025-04-18 13:40

我有一个Django应用程序,已经部署到Heroku上。这个应用可以通过CSV文件接收Facebook账号ID,并解析相关信息。在本地服务器上运行得很好,但当我尝试上传一个较大的CSV文件时,却出现了下面提到的错误。


     14:12:16 web.1  | 2014-07-17 14:12:16 [30747] [INFO] Using worker: sync
     14:12:16 web.1  | 2014-07-17 14:12:16 [30752] [INFO] Booting worker with pid: 30752
     14:13:21 web.1  | 2014-07-17 14:13:21 [30747] [CRITICAL] WORKER TIMEOUT (pid:30752)
     14:13:21 web.1  | 2014-07-17 03:43:21 [30752] [INFO] Worker exiting (pid: 30752)
     14:13:21 web.1  | 2014-07-17 14:13:21 [30841] [INFO] Booting worker with pid: 30

2 个回答

12

这是一个Procfile的例子,里面设置了超时时间增加到15秒。

web: gunicorn myproject.wsgi --timeout 15 --keep-alive 5 --log-level debug
18

Heroku的请求时间限制是30秒,如果请求超过这个时间,系统就会自动终止这个请求。

你可以提高gunicorn的日志级别,这样可以查看你的程序中是否有错误。

撰写回答