您好,登錄后才能下訂單哦!
本篇內容介紹了“MySQL八大集群架構的優點和缺點總結”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
很多開發者可能都沒有接觸過 MySQL 的架構部署,但是大多數應該都聽過集群架構吧。其實 MySQL 集群架構,總結來說一共有好多種,今天我主要總結一下其中常用的 8 種集群架構。
主從架構一般說的是,讀寫分離這種。他的好處是,數據可以有備份。并且,在一定程度上緩解了讀和寫的效率。從而提高數據庫系統的可用性。
主從架構有一個特點就是,如果有一個故障,那么高可用就無法談起。所以,有的公司便采用這種主主互備的架構來解決突發的單點故障帶來的影響。這種架構的特點是,MySQL 雙主復制,即互為 Master-Slave (只有一個 Master 提供寫操作),可以實現數據庫服務器的熱備,但是一個 Master 宕機后不能實現動態切換。使用 Keepalived,可以通過虛擬 IP,實現雙主對外的統一接口以及自動檢查、失敗切換機制,從而實現 MySQL 數據庫的高可用方案。
這種架構比上面的主主互備 + keepalived 模式,性能更好一些。讀寫分離等都是可以實現的。
對比上面的一種架構,每個主庫上都加一個從庫,太浪費了,包括 IO 等都有不小的影響。如果把從庫都掛到一個主庫上,那么效率就會更高一些。
MMM(Master-Master replication manager for MySQL)是一套支持雙主故障切換和雙主日常管理的腳本程序。MMM 使用 Perl 語言開發,基于 mysql 主從復制,成熟高可用集群方案,由一個管理端(monitor)和多個代理端(aget)構成。
這種架構優點:監控所有 Master 節點及 Slave 節點狀態,當 master 節點出現故障,會把 vip 自動轉移到健康節點上;更重要的是當 Master 節點發生故障,會自動將后端 Slave 節點轉向備用的 Master 節點繼續同步復制,切換過程不需要人工干預;
缺點:對 ip,服務器數量有要求(至少兩臺服務器,2個真實 ip,3 個 vip);業務繁忙,數據量大的時候不是很穩定,會出現復制延時,切換失效等問題;所以 MMM 方案不適合應用于對數據安全性要求很高,并讀寫頻繁的環境中。數據量大的時候,會有主從數據不同步的問題。
MHA(Master High Availability)目前在 MySQL 高可用方面是一個相對成熟的解決方案,它由日本 DeNA 公司 youshimaton(現就職于 Facebook 公司)開發,是一套優秀的作為 MySQL 高可用性環境下故障切換和主從提升的高可用軟件。在 MySQL 故障切換過程中,MHA 能做到在 0~30 秒之內自動完成數據庫的故障切換操作,并且在進行故障切換的過程中,MHA 能在最大程度上保證數據的一致性,以達到真正意義上的高可用。
這種架構搭建起來比較麻煩,至少三臺機器,淘寶進行過二次開發,可以用兩臺機器。
MySQL Proxy 有一項強大功能是實現“讀寫分離”,基本原理是讓主數據庫處理寫方面事務,讓從庫處理 SELECT 查詢。
通過 lua 腳本實現的讀寫分離,官網不建議用。由于加入了一層 proxy 會導致網絡請求的增加消耗,所以性能造成一定的影響。
Amoeba for MySQL是一款優秀的中間件軟件,同樣可以實現讀寫分離,負載均衡等功能,并且穩定性也高于 MySQL Proxy。
Amoeba(變形蟲)項目,專注 分布式數據庫 proxy 開發。座落與 Client、DB Server(s) 之間。對客戶端透明。具有負載均衡、高可用性、sql 過濾、讀寫分離、可路由相關的 query 到目標數據庫、可并發請求多臺數據庫合并結果。
它的特點:降低數據切分帶來的復雜多數據庫結構;提供切分規則并降低,數據切分規則,給應用帶來的影響;降低 db 與客戶端的連接數;讀寫分離。
Amoeba 致力于 mysql 分布式數據庫前端代理層,它主要在應用層,訪問 mysql 的時候充當 SQL 路由器的功能,依據用戶事先設置的規則,將 SQL 請求發送到特定的數據庫上執行。基于此可以實現負載均衡、讀寫分離、高可用性等需求。Amoeba 相當于一個 SQL 請求的路由器,目的是為負載均衡、讀寫分離、高可用性提供機制,而不是完全實現它們。
“MySQL八大集群架構的優點和缺點總結”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。