為了應對不斷變化的業務需求,使資料庫資源能夠適應業務規模的快速變化,避免資源浪費和控制資料庫營運成本,雲資料庫RDS PostgreSQL Serverless執行個體提供了即時彈效能力。通過本文檔,您將瞭解到Serverless執行個體的特性、架構和使用方法,協助您降低成本和提高營運效率。
介紹
RDS PostgreSQL Serverless執行個體提供了CPU、記憶體的即時彈效能力,構建雲端硬碟架構下的RDS PostgreSQL產品新形態。執行個體不僅提供網路資源、命名空間、儲存空間的垂直資源隔離能力,還提供計算資源按需計費的能力,具有資源用量低、簡單易用、彈性靈活和價格低廉等優點,賦能使用者面向業務峰穀時對計算能力進行快速且獨立的擴縮容要求,做到快速響應業務變化的同時,合理最佳化使用成本,進一步助力企業降本增效。
RDS PostgreSQL Serverless執行個體計算資源的單位是RCU(RDS Capacity Unit),1個RCU的效能約為1核(最大)2 GB,執行個體計算資源會在您指定的RCU範圍內自動調整。
RDS PostgreSQL Serverless執行個體的最大串連數固定為2400,不支援調整,也不會隨RCU的變化而改變。
在業務波動較大的情境下,普通執行個體和Serverless執行個體資源使用和規格變化情況如下圖所示:
由上圖可以看到,在業務波動較大的情境下:
普通執行個體:在波穀期浪費的資源較多,在高峰期資源不足,業務受損。
Serverless執行個體:
由於其計算資源隨業務需求量隨時調整,總體浪費的資源很少,提升了資源使用率,降低了資源使用成本。
在高峰期也能完全滿足業務需求,保證業務不受損,提高了系統的穩定性。
打破固定資源付費的模式,做到真正負載與資源動態匹配的隨用隨付,可節省大量成本。
無需手動變更配置,提高了營運效率,降低了營運管理員和開發人員的營運成本。
支援自動啟停能力。當沒有串連時,執行個體自動暫停,釋放計算資源節約成本;當有串連建立時,自動啟動。
對高吞吐寫入情境和高並發業務進行了設計最佳化,同時提供了Auto Scaling能力,適合業務資料量大、並具有典型的業務訪問波峰波穀情境。
優勢
更低的成本:對於創業初期的企業,PostgreSQL Serverless不依賴其他的基礎設施和相關服務,即買即用並可以提供穩定和高效的資料存取服務。使用期間只需要為佔用的資源按使用量付費。
更大的儲存空間:儲存空間最大可高達32 TB,根據執行個體資料量自動擴充,可以有效避免叢集儲存資源不足對業務造成影響。
計算資源自動彈性擴縮容:使用者讀取和寫入需要的計算資源可Auto Scaling,極大減少了營運成本和系統風險。
全面託管和免營運:系統部署、擴縮容、警示處理等所有營運工作由阿里雲專業團隊完成,使用者無感知,業務無影響,服務持續可用,真正免營運。
適用情境
開發、測試環境等低頻資料庫使用情境
中小企業建站服務等SaaS應用情境
個人開發人員使用者
學校教學、學生實驗等教育情境
物聯網(IoT)、邊緣計算等不確定負載情境
全託管或希望完全免營運的使用者
業務有波動或不可預測的使用者
具有間歇性定時任務的業務情境
計費說明
使用方法
根據實際業務需求,您可以調整Serverless執行個體的計算資源擴縮容範圍,包括最小RCU和上限RCU,以實現資源的最佳化配置。
如果您對特定時段的穩定性有嚴格要求,您可以通過定時任務提前配置Serverless執行個體的RCU,以確保該時段內執行個體的穩定性。
對於Serverless執行個體的彈性策略,您可以選擇預設的非強制執行策略以避免潛在的服務中斷,或在效能需求高於持續可用性時選擇強制執行策略。
開啟自動啟停後,如果10分鐘之內執行個體中無串連,執行個體將自動進入暫停狀態,該狀態下RCU為0,不收取計算費用。執行個體暫停狀態下,有任何串連接入,執行個體自動回復運行,並開始收取計算費用。
常見問題
Q:為何會收到關於Serverless執行個體CPU、記憶體等相關的CloudMonitor警示?
A:此情況通常是由於預先配置的全域警示規則所致。如果已存在針對所有RDS PostgreSQL執行個體(或特定資源群組)的CPU、記憶體等指標的警示規則,那麼新建立的 Serverless 執行個體會自動繼承這些規則。儘管 Serverless 執行個體能夠自動調整,但當其資源使用率瞬時達到警示閾值時,系統仍會觸發並發送警示通知。
要管理這些警示,請登入CloudMonitor控制台,在頁,通過進階篩選功能,查看目標Serverless執行個體當前啟用的警示規則,並對其進行管理。
Q:為什麼執行個體在遭遇高負載時未能及時擴容(提升RCU),導致服務無響應?
A: 執行個體在高負載下未能及時擴容(提升RCU)通常由以下兩種原因導致:
已達到 RCU 上限:執行個體的計算資源已擴容至設定的最大RCU值,無法繼續提升。此時需評估業務峰值需求,並適當調高RCU的上限。
擴容延遲無法匹配瞬時流量:Serverless 的彈性擴容機制需要時間響應。擴容通常在CPU或記憶體使用量率超過80%時觸發,整個過程約需5秒。如果業務流量在極短時間內(例如,小於5秒)急劇飆升,可能導致執行個體在觸發並完成擴容前就因資源耗盡而無響應。對於這種需要應對瞬時超高並發的業務情境,建議使用預置固定資源的常規執行個體以保障服務的穩定性。
Q:為什麼在業務壓力降低後,執行個體沒有自動縮容(降低 RCU)?
A: Serverless 執行個體的縮容(降低 RCU)操作需要同時滿足CPU使用率低於50%和記憶體使用量率低於 50%兩個條件。
一個常見原因是資料庫的頁面緩衝(Page Cache)佔用了較高記憶體。即使業務壓力下降,PostgreSQL 為最佳化後續查詢效能,可能仍會保留資料在記憶體中,導致記憶體使用量率無法降至50%以下,從而不滿足縮容條件。若需立即觸發縮容,可通過重啟執行個體來強制釋放頁面緩衝,降低記憶體使用量率。
Q: 執行個體已暫停且沒有串連的情況下,怎麼啟動執行個體?
A: 在控制台關閉該執行個體的自動啟停功能,執行個體即可自動啟動。