這是我之前發佈的有關SQLAlchemy中的數據庫連接池錯誤的question的後續行爲。爲什麼限制SQLAlchemy中的數據庫連接池大小?
按照SQLAlchemy的docs的sqlalchemy.pool.QueuePool.__init__()
方法採用以下參數:
pool_size - 維持所述池的大小,缺省值爲5這 是最大連接數量將一直保持在 池中。請注意,池開始時沒有連接;一旦請求連接數 ,該連接數將保留 。 pool_size可以設置爲0來表示沒有大小限制;到 禁用池,改爲使用NullPool。
設置pool_size = 0有什麼缺點?限制連接池大小有什麼好處?只是爲了節省內存嗎?數據庫不應該關心大量未使用的連接是否打開,對嗎?