Postgresql
對 PostgreSQL 中的最大連接數感到困惑
我正在建構一個 Web 應用程序,並使用 PostgreSQL 作為數據庫管理系統。
以下頁面詳細說明了最大連接數設置:
我在下一頁閱讀了有關調整的資訊
它提到
一般來說,好的硬體上的 PostgreSQL 可以支持幾百個連接。
題
我對什麼定義了“連接”感到困惑。許多網站有數千或更多的使用者,如果它一次只能支持幾百個連接,那麼就需要顯著的水平擴展。連接很短嗎?…意思是,如果使用者載入頁面並查詢數據庫,它會在之前和之後打開和關閉連接嗎?
在 Web 應用程序中,您使用連接池來建立固定數量的數據庫連接,然後在 Web 應用程序中的所有會話之間共享這些連接。
即使一個 Web 應用程序有數千個並髮使用者,它也可能只需要多達 50 個數據庫連接(如果連接池做得正確的話)。
意思是,如果使用者載入一個頁面並查詢數據庫,它會在之前和之後打開和關閉連接嗎?
不,你不應該那樣做。打開和關閉連接是一項相對昂貴的操作。連接池通常會保持連接打開 - 至少在定義的時間內。您的應用程序從池中獲取連接並將它們返回到池中。