最近,我收到有关此连接插槽似乎不足以及许多这些Heroku错误的错误:
H18-请求中断 H19-后端连接超时 H13-连接关闭而无响应 H12-请求超时
django.db.utils.OperationalError in /
FATAL: remaining connection slots are reserved for non-replication superuser connections
是否存在关于在Django应用程序中应在何处执行或不应该执行查询集或何时关闭数据库连接的通用良好实践?
我以前从未遇到过此错误。我增加了heroku上的dynos并分配了更多的RAM,但我仍然遇到同样的问题。
我在Stack Overflow上发现了类似的问题,但我一直无法弄清楚到底是什么引起了该问题。
我在模型方法,视图,装饰器视图,上下文处理器中有查询集。
我的第一个倾向是,某个地方执行的查询集效率低下,导致连接保持打开状态,最终有足够多的人访问该网站,导致应用程序崩溃。
任何帮助表示赞赏。谢谢。
我意识到我在procfile中使用了django服务器。我不小心将其注释掉并提交给heroku而不是使用gunicorn。一旦我在相同的heroku计划上切换到gunicorn,问题就解决了。
使用生产级应用服务器确实有很大的不同。当您容易出错时,也不要在一天中的疯狂时间进行编码。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句