据我所知,Django与DB的持久连接数量与CONN_MAX_AGE
代表的数量相同。
如果是这样,将连接分发到应用程序的规则是什么?
例如。
案例1.无论多进程,多线程环境如何,每次应用程序请求时都会分发连接(例如,在异步环境中,每个请求都可以建立连接)
案例2.连接分发到每个线程(线程级别)
案例3.连接分发到每个进程(进程级别)
有没有办法监控这种行为?,
在DB中是否有任何预先设置可以在Django
中更新数据库连接池。
答案 0 :(得分:2)
next()
Connection是一个本地线程。
请注意,从数据库的角度来看,几乎不建议在多个线程之间共享连接。
当然,进程之间不会共享非持久性数据。
对于连接池,您需要在django和DB之间使用一些代理。但是如果你使用持久连接,你可以在wsgi中实现与多个线程类似的效果,这将保持与数据库的多个连接。