開通RDS MySQL數據庫代理后,因實際業務需要,您可能需要調整開通代理時默認的代理連接地址訪問策略(原配置代理終端)。本文為您介紹代理連接地址訪問策略各配置項的含義及配置方法。
關于RDS數據庫代理的使用問題和更多相關信息,歡迎加入用戶釘釘群(106730000316)進行咨詢、反饋和交流 。
前提條件
配置代理連接地址訪問策略
您可以通過使用不同代理連接地址ID綁定的內、外網地址來訪問RDS MySQL數據庫實例,以實現不同的業務邏輯。
訪問RDS實例列表,在上方選擇地域,然后單擊目標實例ID。
在左側導航欄,單擊數據庫代理。
在連接信息區域,在目標代理連接地址右側,單擊修改配置。
在彈出的對話框中,根據業務需要修改代理連接地址的訪問策略。具體配置項說明如下表所示。
配置項
說明
連接描述
自定義代理連接地址的描述,最多支持30個字符。
連接地址網絡及可用區
代理的可用區及交換機信息。
讀寫屬性
設置當前代理連接地址(代理終端)的讀寫屬性:
讀寫(讀寫分離)(默認):同時連接主實例和只讀實例,可以接受寫請求。
只讀(不連接主實例,無法接受寫請求):僅連接只讀實例,不接受寫請求。
說明修改讀寫屬性后,只對新建連接生效,已有的連接依舊保持原來的模式。更多信息,請參見什么是讀寫分離、設置讀寫屬性和讀權重。
對于集群系列實例,您可以直接使用實例的主備節點做讀寫分離。
就近訪問
開啟或關閉就近訪問功能。推薦開啟就近訪問,以降低訪問延遲,提升性能。更多信息,請參見設置就近訪問。
連接池
設置連接池類型,詳情請參見設置連接池:
事務級連接池(推薦):
業務側多為短連接
連接創建頻繁
連接數量很大(大于MySQL數據庫的連接數限制)
以上場景下,業務不涉及事務級連接池的使用限制,建議優先選擇事務級連接池。
會話級連接池:
業務側多為短連接
連接創建頻繁
以上場景下,業務受到事務級連接池的使用限制而無法使用事務級連接池,可使用會話級連接池。
關閉連接池(默認)
業務側多為長連接
連接數量很少
業務側已經使用了連接池(例如:Druid、DBCP、C3P0、HikariCP等)
以上場景下,可以不使用連接池。
說明當數據庫代理小版本低于2.9.1時,該配置項僅在讀寫屬性為讀寫(讀寫分離)時可選,代理小版本大于等于2.9.1時無限制。
延遲閾值
設置只讀實例同步主實例數據時允許的最長延遲時間,取值范圍:0秒~3600秒。
推薦值:受限于SQL的執行情況,只讀實例有一定的機率會出現延遲,建議該值不小于30秒。
說明當數據庫代理小版本低于2.9.1時,該配置項僅在讀寫屬性為讀寫(讀寫分離)時可選,代理小版本大于等于2.9.1時無限制。
當只讀實例的延遲時間低于閾值且讀權重不為0時,讀請求才會被轉發至只讀實例。
支持關閉延遲閾值功能,關閉后讀請求轉發到只讀實例不受其延遲時間約束。
在讀寫屬性為讀寫(讀寫分離)時延遲閾值默認為30秒;讀寫屬性為只讀時默認關閉延遲閾值功能。
事務拆分
設置是否開啟事務拆分功能,默認為開啟。事務拆分能夠將事務內寫操作之前的讀請求轉發到只讀實例,降低主實例負載。
說明僅在讀寫屬性為讀寫(讀寫分離)時可選。更多信息,請參見設置事務拆分。
讀權重分配
設置數據庫各個實例的讀請求權重,支持選擇系統分配或自定義:
系統分配:系統根據實例規格自動分配各個實例的讀權重。后續該主實例下新增的只讀實例也會自動按照系統分配的權重加入到讀寫分離鏈路中,無需手動設置。
自定義:手動設置各個實例的讀權重,范圍為0~10000,讀請求將按照各個只讀實例權重比例分配,后續該主實例下新增只讀實例的讀權重默認為0,需要您手動修改。
說明就近訪問功能是保證客戶端到代理之間的路由,而讀權重是設置代理到后端MySQL實例之間的路由,兩者互不相關。但需要將二者結合使用,才能做到最小訪問延遲。
實例的讀權重越高,處理的讀請求越多。例如,假設主實例有3個只讀實例,讀權重分別為0、100、200和200,則表示主實例不處理讀請求(寫請求仍然自動發往主實例),3個只讀實例按照1:2:2的比例處理讀請求。
不支持為已經設置只讀實例延時復制時間的實例設置權重。
修改本參數實時生效,不會造成業務不可用。修改完成后,已存在的連接不會斷開重連,只有新連接才會根據新權重進行分配。
如果RDS MySQL數據庫實例為集群系列實例,則配置的權重為主節點和備節點的權重。
如果RDS MySQL數據庫實例為高可用系列實例時,需要至少開通1個只讀實例后,才可以設置讀權重。
更多信息,請參見設置讀寫屬性和讀權重。
單擊確定。
您可按需配置數據庫代理的連接保持功能,該功能開啟或關閉,將對當前RDS實例的所有數據庫代理連接地址的訪問策略生效。連接保持功能支持RDS MySQL實例在發生主動切換或故障場景下,保持應用程序與代理的連接不斷開,用戶通過代理地址訪問數據庫的應用程序不會收到連接斷開的報錯。具體操作,請參見設置連接保持。
相關文檔
相關API
API | 描述 |
查詢RDS實例的數據庫代理詳情。 | |
查詢RDS實例數據庫代理的代理連接地址訪問策略信息。 | |
修改RDS實例數據庫代理連接地址信息的設置。 |