淺談 MySQL 集羣高可用架構

前言

高可用架構對於互聯網服務基本是標配,不管是應用服務仍是數據庫服務都須要作到高可用。對於一個系統而言,可能包含不少模塊,好比前端應用,緩存,數據庫,搜索,消息隊列等,每一個模塊都須要作到高可用,才能保證整個系統的高可用。對於數據庫服務而言,高可用可能更復雜,對用戶的服務可用,不只僅是能訪問,還須要有正確性保證,所以數據庫的高可用方案是一直以來的討論熱點,今天就各類的高可用方案,談一下我的的一些見解,若有錯誤,還請指正!!前端

MySQL 主從架構

此種架構,通常初創企業比較經常使用,也便於後面步步的擴展mysql

此架構特色:

一、成本低,佈署快速、方便nginx

二、讀寫分離面試

三、還能經過及時增長從庫來減小讀庫壓力redis

四、主庫單點故障sql

五、數據一致性問題(同步延遲形成)數據庫

MySQL+DRDB 架構

經過 DRBD 基於 block 塊的複製模式,快速進行雙主故障切換,很大程度上解決主庫單點故障問題緩存

此架構特色:

一、高可用軟件可以使用 Heartbeat, 全面負責 VIP、數據與 DRBD 服務的管理安全

二、主故障後可自動快速切換,而且從庫仍然能經過 VIP 與新主庫進行數據同步服務器

三、從庫也支持讀寫分離,可以使用中間件或程序實現

想學習交流HashMap,nginx、dubbo、Spring MVC,分佈式、高性能高可用、redis、jvm、多線程、netty、kafka、的加羣:190713474 加羣獲取資料學習,無工做經驗不要加哦!

MySQL+MHA 架構

MHA 目前在 Mysql 高可用方案中應該也是比較成熟和常見的方案,它由日本人開發出來,在 mysql 故障切換過程當中,MHA 能作到快速自動切換操做,並且還能最大限度保持數據的一致性

此架構特色:

一、安裝佈署簡單,不影響現有架構

二、自動監控和故障轉移

三、保障數據一致性

四、故障切換方式可以使用手動或自動多向選擇

五、適應範圍大(適用任何存儲引擎)

MySQL+MMM 架構

MMM 即 Master-Master Replication Manager for MySQL(mysql 主主複製管理器),是關於 mysql 主主複製配置的監控、故障轉移和管理的一套可伸縮的腳本套件(在任什麼時候候只有一個節點能夠被寫入),這個套件也能基於標準的主從配置的任意數量的從服務器進行讀負載均衡,因此你能夠用它來在一組居於複製的服務器啓動虛擬 ip,除此以外,它還有實現數據備份、節點之間從新同步功能的腳本。

MySQL 自己沒有提供 replication failover 的解決方案,經過 MMM 方案能實現服務器的故障轉移,從而實現 mysql 的高可用。

此方案特色:

一、安全、穩定性較高,可擴展性好

二、 對服務器數量要求至少三臺及以上

三、 對雙主(主從複製性要求較高)

四、 一樣可實現讀寫分離

歡迎你們關注Java架構微信公衆號

感謝訂閱!這裏,你將學習到Java最新高級Java技術。

回覆:「阿里手冊」免費下載阿里巴巴開發手冊!

回覆:「架構學習」瞭解最新知識!

【精選面試題】回覆「面試」獲得各大互聯網公司精選面試!

【JAVA架構資料】回覆「架構資料」便可獲取!

【雙十一架構高清體系圖】回覆「架構圖」便可獲取!

【經典書籍】回覆「書籍」便可獲取!

相關文章
相關標籤/搜索