日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

事務級連接池

PolarDB支持事務級連接池,您可以根據(jù)業(yè)務需求使用事務級連接池,幫助降低因大量連接導致的數(shù)據(jù)庫負載壓力。

前提條件

事務級連接池功能需要數(shù)據(jù)庫代理的版本為2.3.46及以上。

背景信息

由于PolarDB PostgreSQL版的連接模型是每個連接需要創(chuàng)建一個進程進行處理,所以當客戶端同時保持大量的長連接或頻繁創(chuàng)建新連接時,數(shù)據(jù)庫的壓力會變大,而且性能也會嚴重衰減。

為了提高這些場景下的性能。PolarDB PostgreSQL版提供事務級連接池功能。通過讓多個前端連接共享一個后端連接的方式,減少后端建連次數(shù)與保持的連接數(shù),從而提升這些場景下數(shù)據(jù)庫的處理能力。

原理介紹

image.png

事務級連接池主要用于減少直接連接到數(shù)據(jù)庫的業(yè)務連接數(shù),以及減少短連接場景下頻繁建連帶來的負載。

開啟事務級連接池后,當客戶端發(fā)送請求時,會先與PolarDB代理建連,代理不會馬上將其與后端數(shù)據(jù)庫建連,而是先從事務級連接池里查找是否存在可用的連接(判斷是否為可用連接的條件:user、dbname和系統(tǒng)變量這3個參數(shù)值是否一致)。若不存在,代理會與數(shù)據(jù)庫創(chuàng)建一個新連接;若存在,則從連接池里直接拿出并使用,并在當前事務結束后將該連接放回事務級連接池,方便下個連接請求繼續(xù)使用。從而達到減少了數(shù)據(jù)庫代理和數(shù)據(jù)庫的連接數(shù)的目的。

開啟事務級連接池后,客戶端與PolarDB代理間可以存在上千個連接,但代理與后端數(shù)據(jù)庫間可能只存在幾十或幾百個連接。

PolarDB代理本身并沒有最大連接數(shù)的限制,連接數(shù)的限制主要由后端數(shù)據(jù)庫中計算節(jié)點的規(guī)格決定。未開啟事務級連接池時,每條由客戶端發(fā)起的連接都需要在后端主節(jié)點和所有只讀節(jié)點上各創(chuàng)建一個對應的連接。

使用說明

開啟事務級連接池

  1. 登錄PolarDB控制臺。

  2. 在控制臺左上角,選擇集群所在的地域。

  3. 找到目標集群,單擊集群ID。

  4. 鏈接地址區(qū)域,單擊配置

  5. 單擊連接池右側的事務級

    image.png

  6. 單擊確定

關閉事務級連接池

  1. 登錄PolarDB控制臺。

  2. 在控制臺左上角,選擇集群所在的地域。

  3. 找到目標集群,單擊集群ID。

  4. 鏈接地址區(qū)域,單擊配置。

  5. 單擊連接池右側的關閉。

  6. 單擊確定。

使用限制

  • 當執(zhí)行以下行為時,鎖定連接,直至連接結束,即該連接不會再被放到連接池里供其他用戶連接使用。

    • 執(zhí)行PREPARE語句

    • 大報文(例如16 MB以上)

    • copy mode

    • flush mode

    • 臨時表、sequence、view

    • 事務中

    • 聲明游標

  • 由于連接可能會被復用,所以使用select pg_backend_pid()查詢當前連接的pid可能會變化。

  • 由于連接可能會被復用,所以pg_stat_activity或者SQL洞察中顯示的IP地址和端口,可能會與客戶端實際的IP地址和端口不一致。

連接池的選擇

您可以根據(jù)如下建議評估選擇是否開啟連接池:

  • 若業(yè)務使用的多為長連接且連接數(shù)較少,或者業(yè)務本身已具備較好的連接池,那么您可以不使用PolarDB的連接池功能。

  • 若業(yè)務使用的連接數(shù)較多(如連接數(shù)需求上萬)或使用的是Serverless服務(即連接數(shù)會隨著業(yè)務端服務器的擴容而線性增加),且確認您的業(yè)務不涉及上述事務級連接池使用限制的場景,那么您可以選擇開啟事務級連接池。