大公司mysql集群用什麼

anonymity
發布: 2019-05-05 18:13:45
原創
6007 人瀏覽過

在中小型網路的企業。 mysql的叢集一般就是上圖的架構。 WEB節點讀取資料庫的時候讀取dbproxy伺服器。 dbproxy伺服器透過對SQL語句的判斷來進行資料庫的讀寫分離。讀取請求負載到從庫(也可以把主庫加上),寫入請求寫主庫。

大公司mysql集群用什麼

這裡的dbproxy是資料庫叢集的唯一出口所以也需要做高可用。

drproxy是資料庫讀寫分離的常用軟體,amoeba、mycat、cobar也很常用。這類軟體不僅具有讀寫分離功能,還可以實現負載平衡以及後端節點的健康檢查。

資料庫的讀寫分離除了透過這類資料庫中間件軟體實現,還可以寫在程式中。

通常我們的主庫要做雙主高可用,實作主庫掛掉另一個主庫立刻接管。如果不做雙主,從函式庫接手主函式庫的時候需要做狀態遷移,會有延遲。

大公司mysql集群用什麼

資料庫主庫的高可用重點需要考慮的是資料同步。比較常用的高可用方案有:

1、keepalived mysql replication。透過keepalived實現VIP飄逸,透過mysql自帶的同步方案replication實現資料同步。

2、hearbeat drbd。透過drbd實現雙主資料的同步,這個資料同步是基於區塊設備的。比一般的同步方案快很多。透過heartbeat實現VIP漂移以及drbd資源的切換管理。

3、keepalived mha。

對於從函式庫,最好不要超過5個。我們可以把其中的三個當作使用者造訪的節點,把另外一個當作內部人員的查詢節點。因為內部人員查詢節點的時候通常是依照時間段查詢,不經過索引,佔用的資源比較多,所以要把這個節點單獨專用,以免影響客戶存取。最後我們應該留一個從庫進行資料庫的資料備份。

從庫的資料一致性保持可以透過直接於主庫進行主從輔助,也可以從其他從庫那進行主從複製(優點是減少主庫壓力,缺點是延遲稍大)。

以上是大公司mysql集群用什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板