Django 1.6现在支持CONN_MAX_AGE
to pool database connections。
默认情况下,该值为0(无池)。这个选项的合理价值是什么?
答案 0 :(得分:19)
此值取决于您网站的流量,流量越多,保留连接的秒数越多,我建议设置一个相对较小的值,如60
,并根据使用模式进行相应调整。
编辑(2018):
就像@jcyrss指出的那样,这种方法有它的怪癖,为了将来的参考,我建议将池化为pgbouncer而不是。
答案 1 :(得分:13)
不像“流量越多,保留连接的秒数越多”这么简单。
这也取决于你如何运行Django。
现在,一种在gunicorn + greenlet(evenlet或gevent)中推出Django的流行方式。如果你将CONN_MAX_AGE设置为60(在我的情况下甚至是5),你可能会抱怨来自DB服务器的“连接太多”。
有关详细信息,请参阅此处。