MySQL資料庫的集群解決方案(二)

2021-10-03 03:49:35 字數 785 閱讀 7527

負載均衡

為了解決以上問題,我們將繼續優化架構,在應用程式和中介軟體之間增加proxy**,由**來完成負載均衡的功能,應用程式只需要對接到proxy即可。

proxy分發可以是隨機也可以是輪循

中介軟體比**做的事情要多,**只做**,壓力小。

pxc集群架構 

在前面的架構中,都是基於mysql主從的架構,那麼在主從架構中,弱一致性問題依然沒有解決,如果在需要強一致性的需求中,顯然這種架構是不能應對的,比如:交易資料。 

pxc提供了讀寫強一致性的功能,可以保證資料在任何乙個節點寫入的同時可以同步到其它節點,也就意味著可以存 其它的任何節點進行讀取操作,無延遲。 

架構如下:

缺點:資料到pxc時,事務沒有提交,在所有的pxc節點完成同步後,完成事務的提交;這裡是犧牲了效能來保證資料換一致性,pxc集群的數量越多效能就越差。

混合架構

在前面的pxc架構中,雖然可以實現了事務的強一致性,但是它是通過犧牲了效能換來的一致性,如果在某些業務場景下,如果沒有強一致性的需求,那麼使用pxc就不合適了。所以,在我們的系統架構中,需要將這兩種方式綜合起來,這樣才是乙個較為完善的架構

MySQL資料庫的集群解決方案(一)

讀寫分庫架構 我們一般應用對資料庫而言都是 讀多寫少 也就說對資料庫讀取資料的壓力比較大,有乙個思路就是說採用資料庫集群的方案 其中乙個是主庫,負責寫入資料,我們稱之為 寫庫 其它都是從庫,負責讀取資料,我們稱之為 讀庫 那麼,對我們的要求是 1.讀庫和寫庫的資料一致 2.寫資料必須寫到寫庫 3.讀...

mysql資料庫亂碼解決方案

導致往資料庫插入中文資料,出現亂碼問題的原因與下列幾個因素有關 1.客戶端編碼 2.連線編碼 3.資料庫編碼 例如,如果想以gb2312的編碼格式往資料庫存入中文資料,那麼首先用以向指 定資料庫傳送資料的客戶端的編碼必須是gb2312 其次,連線指定資料庫 的連線編碼也必須是gb2312 最後資料庫...

資料庫集群和高可用解決方案

概述 盡可能的讓資料庫處於可用狀態。提供高可用解決方案要考慮的因素 1 rto recovery time objective 允許的離線時間,2 rpo recovery point objective 允許的資料丟失量 rto和pro統稱為 sla service level agrement ...