PolarDB集群的連接地址(又稱為Endpoint)分為主地址、集群地址(又稱為默認集群地址)和自定義地址三種類型。其中,默認集群地址和自定義地址都是通過數據庫代理來實現的,即這兩類地址的請求是經過代理節點,而主地址的請求不經過代理節點。在連接PolarDB集群時,您可以填寫PolarDB集群的上述三種地址,推薦使用默認集群地址。本文將分別介紹這三種地址的作用和區別。
集群地址和主地址對比說明
地址類型 | 地址說明 | 適用場景 | 支持的網絡類型 |
默認集群地址(推薦) | 創建PolarDB集群時,每個集群會有1個默認集群地址。該地址的服務由數據庫代理提供。 默認集群地址支持自動讀寫分離,即寫請求路由到主節點,讀請求路由到只讀節點。關于數據庫代理的說明,請參見數據庫代理。 | 適用于有讀寫分離需求的業務,并且能夠通過增加只讀節點實現快速、實時的業務擴展。 |
|
自定義地址 | 一個PolarDB集群最多可以再創建6個自定義地址。這些地址的服務也由數據庫代理提供。
說明 PolarDB支持創建單節點的自定義地址。若此節點故障,該集群地址可能會有最多1小時的不可用,請勿用于生產環境。 | 通過自定義地址可以實現不同業務對DB節點訪問的隔離需求。如上圖只讀節點5異常只會影響業務Z,不會影響其他業務。 通過配置讀寫模式為只讀可實現該地址只支持純只讀的業務。 | |
主地址 | 每個PolarDB集群均支持且僅支持1個主地址。主地址有以下特點:
| 適用于不需要讀寫分離的業務。 |
私網、公網和經典網絡地址
網絡類型 | 說明 | 使用場景 |
私網 |
| 例如:
|
公網 |
| 例如:通過公網訪問數據庫集群進行維護操作。 |
經典網絡 | 只有當業務處于經典網絡中時,才能通過私網地址(經典網絡)訪問數據庫集群。 |
集群地址的讀寫模式
集群地址支持可讀可寫(自動讀寫分離)和只讀兩種讀寫模式,下表匯總了兩種模式下集群地址的差異供您參考。
設置集群地址讀寫模式的詳細步驟,請參見配置數據庫代理。
對比項 | 可讀可寫(自動讀寫分離) | 只讀 |
服務節點選擇方式 | 支持如下3種方式:
說明 可讀可寫模式下:
| 僅支持如下1種方式:
說明 只讀模式下:
|
負載均衡策略 | 支持基于活躍請求數負載均衡策略。 更多詳情,請參見負載均衡策略。 | 支持基于連接數負載均衡和基于活躍請求數負載均衡策略。 更多詳情,請參見負載均衡策略。 |
主庫是否接受讀 | 支持。 更多詳情,請參見讀寫分離。 | 該功能是為了降低主節點負載,只讀地址的主節點不處理任何讀寫請求,因此無需該功能。 |
事務拆分 | 支持。 更多詳情,請參見事務拆分。 說明 僅當一致性級別為會話一致性(中)或全局一致性(強)時,支持該配置。 | 該功能是為了降低主節點負載,只讀地址的主節點不處理任何讀寫請求,因此無需該功能。 |
一致性級別 | 支持最終一致性(弱)、會話一致性(中)和全局一致性(強)。 更多詳情,請參見一致性級別。 | 最終一致性(弱),因為該地址不執行任何寫操作。 |
連接池 | 支持會話級和事務級連接池。 更多詳情,請參見連接池。 說明
| 不支持。 說明 PolarDB會在只讀集群地址下配置的所有只讀節點(主節點不參與連接分配)間均衡地分配連接,一個客戶端連接會通過Proxy僅連接到一個只讀節點,可用的業務連接總數是所有只讀節點上的連接數之和。 |
安全防護 | 支持。 更多詳情,請參見過載保護。 | 不支持。 |