版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
MySQL高可用集群MySQL架構(gòu)演變MySQL-MMMAtlasMySQL高可用集群MySQL架構(gòu)演變1MySQL架構(gòu)演變1>V1.0簡單網(wǎng)站架構(gòu)2>V2.0垂直拆分3>V3.0主從架構(gòu)4>V4.0水平拆分MySQL架構(gòu)演變1>V1.0簡單網(wǎng)站架構(gòu)2V1.0簡單網(wǎng)站架構(gòu)
一個簡單的小型網(wǎng)站或者應(yīng)用背后的架構(gòu)可以非常簡單,數(shù)據(jù)存儲只需要一個mysqlinstance就能滿足數(shù)據(jù)讀取和寫入需求,處于這個時間段的網(wǎng)站,一般會把所有的信息存到一個databaseinstance里面。APPDALMySQLInstanceV1.0簡單網(wǎng)站架構(gòu)一個簡單的小型網(wǎng)站或者應(yīng)用背后3在V1.0架構(gòu)下,數(shù)據(jù)存儲的瓶頸:1.數(shù)據(jù)量的總大小一個機器放不下時。2.數(shù)據(jù)的索引(B+Tree)一個機器的內(nèi)存放不下時。3.訪問量(讀寫混合)一個實例不能承受。只有當(dāng)以上3件事情任何一件或多件滿足時,我們才需要考慮往下一級演變。從此我們可以看出,事實上對于很多小公司小應(yīng)用,這種架構(gòu)已經(jīng)足夠滿足他們的需求了。在V1.0架構(gòu)下,數(shù)據(jù)存儲的瓶頸:4V2.0垂直拆分一般當(dāng)V1.0遇到瓶頸時,首先最簡便的拆分方法就是垂直拆分,何謂垂直?就是從業(yè)務(wù)角度來看,將關(guān)聯(lián)性不強的數(shù)據(jù)拆分到不同的instance上,從而達到消除瓶頸的目標(biāo)。以圖中的為例,將用戶信息數(shù)據(jù),和業(yè)務(wù)數(shù)據(jù)拆分到不同的三個實例上。對于重復(fù)讀類型比較多的場景,我們還可以加一層cache,來減少對DB的壓力。APPCacheDALMySQLInstanceMySQLInstanceMySQLInstanceuserinfo1userinfo2userinfoV2.0垂直拆分一般當(dāng)V1.0遇到瓶頸時,首先最簡便的拆5在V2.0的架構(gòu)下,數(shù)據(jù)存儲的瓶頸:1.單實例單業(yè)務(wù)依然存在V1.0所述瓶頸遇到瓶頸時可以考慮往本文更高V版本升級,若是讀請求導(dǎo)致達到性能瓶頸可以考慮往V3.0升級,其他瓶頸考慮往V4.0升級。在V2.0的架構(gòu)下,數(shù)據(jù)存儲的瓶頸:6V3.0主從架構(gòu)此類架構(gòu)主要解決V2.0架構(gòu)下的讀問題,通過給Instance掛數(shù)據(jù)實時備份的思路來遷移讀取的壓力,在Mysql的場景下就是通過主從結(jié)構(gòu),主庫抗寫壓力,通過從庫來分擔(dān)讀壓力,對于寫少讀多的應(yīng)用,V3.0主從架構(gòu)完全能夠勝任。APPCacheDALMSSuserinfowriteuserinforeaduserinforeadV3.0主從架構(gòu)此類架構(gòu)主要解決V2.0架構(gòu)下的讀問題,通7在V3.0的架構(gòu)下,數(shù)據(jù)存儲的瓶頸是什么?1.寫入量主庫不能承受在V3.0的架構(gòu)下,數(shù)據(jù)存儲的瓶頸是什么?8V4.0水平拆分對于V2.0V3.0方案遇到瓶頸時,都可以通過水平拆分來解決,水平拆分和垂直拆分有較大區(qū)別,垂直拆分拆完的結(jié)果,在一個實例上是擁有全量數(shù)據(jù)的,而水平拆分之后,任何實例都只有全量的1/n的數(shù)據(jù),以下圖userinfo的拆分為例,將userinfo拆分為2個cluster,每個cluster持有總量的1/2數(shù)據(jù),2個cluster數(shù)據(jù)的總和等于一份完整數(shù)據(jù)(注:這里不再叫單個實例而是叫一個cluster代表包含主從的一個小mysql集群)V4.0水平拆分對于V2.0V3.0方案遇到瓶頸時,都可9APPCacheDALMSSmysqlclusterMSSmysqlclusterAPPCacheDALMSSmysqlclusterMSS10Mysql-mmm1>Mysql-mmm簡介2>mysql-mmm組成與原理3>mysql-mmm架構(gòu)介紹Mysql-mmm1>Mysql-mmm簡介11Atlas1>atlas簡介2>atlas主要功能3>atlas架構(gòu)介紹Atlas1>atlas簡介12Mysql-mmm簡介
MMM(Master-MasterreplicationmanagerforMysql)是一套靈活的腳本程序,用來對mysqlreplication進行監(jiān)控和故障遷移,并能管理mysqlMaster-Master復(fù)制的配置(同一時間只有一個節(jié)點是可寫的)。附帶的工具套件可以實現(xiàn)多個slaves的read負載均衡,因此你可以使用這個工具移除一組服務(wù)器中復(fù)制延遲較高的服務(wù)器的虛擬IP,它還可以備份數(shù)據(jù),兩節(jié)點之間再同步等等。Mysql-mmm簡介MMM(Master-M13mysql-mmm組成與原理Mysql-mmm的管理功能主要通過三個腳本來實現(xiàn)1>mmm_mond監(jiān)控進程,負責(zé)所有的監(jiān)控工作,決定和處理所有節(jié)點角色活動。此腳本需要在監(jiān)管機上運行。2>mmm_agentd運行在每個mysql服務(wù)器上的代理進程,完成監(jiān)控的探針工作和執(zhí)行簡單的遠端服務(wù)設(shè)置。此腳本需要在被監(jiān)管機上運行。3>mmm_control一個簡單的腳本,提供管理mmm_mond進程的命令mysql-mmm的監(jiān)管端會提供多個虛擬IP(VIP),包括一個可寫VIP,多個可讀VIP,通過監(jiān)管的管理,這些IP會綁定在可用mysql之上,當(dāng)某一臺mysql宕機時,監(jiān)管機會將VIP遷移至其他mysql。mysql-mmm組成與原理Mysql-mmm的管理功能主要14mysql-mmm架構(gòu)介紹優(yōu)點:高可用性,擴展性好,出現(xiàn)故障自動切換,對于主主同步,在同一時間只提供一臺數(shù)據(jù)庫寫操作,保證的數(shù)據(jù)的一致性。缺點:Monitor節(jié)點是單點,可以Keepalived實現(xiàn)高可用,對大規(guī)模寫入操作有瓶頸。mysql-mmm架構(gòu)介紹15MySQL高可用集群分享-5課件16atlas簡介Atlas是由Qihoo360,Web平臺部基礎(chǔ)架構(gòu)團隊開發(fā)維護的一個基于MySQL協(xié)議的數(shù)據(jù)中間層項目。它在MySQL官方推出的MySQL-Proxy0.8.2版本的基礎(chǔ)上,修改了大量bug,添加了很多功能特性。目前該項目在360公司內(nèi)部得到了廣泛應(yīng)用,很多MySQL業(yè)務(wù)已經(jīng)接入了Atlas平臺,每天承載的讀寫請求數(shù)達幾十億條。atlas簡介Atlas是由Qihoo360,Web17atlas主要功能1>讀寫分離2>從庫負載均衡3>IP過濾4>自動分表5>DBA可平滑上下線DB6>自動摘除宕機的DBatlas主要功能1>讀寫分離18atlas架構(gòu)介紹不足之處:1>使用atlas比直連DB,性能損耗大概是30%-35%左右2>使用atlas比直連DB,響應(yīng)時間大概是直連DB的1.5~2倍3>對分表的支持不是太好,只支持同schema下的hash分表,并且分表后查詢只基于分表key的等值查詢(如果支持范圍查詢,那么比直接非分表情況掃描全表的性能還差,所以360干脆就不支持)4>atlas配置暫時不支持配置參數(shù)的動態(tài)加載,如果修改了配置需要重啟atlas,這可能會對業(yè)務(wù)有一點的影響atlas架構(gòu)介紹不足之處:19主備模式,高可用雙主模式↓主備模式,高可用雙主模式↓20謝謝!謝謝!21MySQL高可用集群MySQL架構(gòu)演變MySQL-MMMAtlasMySQL高可用集群MySQL架構(gòu)演變22MySQL架構(gòu)演變1>V1.0簡單網(wǎng)站架構(gòu)2>V2.0垂直拆分3>V3.0主從架構(gòu)4>V4.0水平拆分MySQL架構(gòu)演變1>V1.0簡單網(wǎng)站架構(gòu)23V1.0簡單網(wǎng)站架構(gòu)
一個簡單的小型網(wǎng)站或者應(yīng)用背后的架構(gòu)可以非常簡單,數(shù)據(jù)存儲只需要一個mysqlinstance就能滿足數(shù)據(jù)讀取和寫入需求,處于這個時間段的網(wǎng)站,一般會把所有的信息存到一個databaseinstance里面。APPDALMySQLInstanceV1.0簡單網(wǎng)站架構(gòu)一個簡單的小型網(wǎng)站或者應(yīng)用背后24在V1.0架構(gòu)下,數(shù)據(jù)存儲的瓶頸:1.數(shù)據(jù)量的總大小一個機器放不下時。2.數(shù)據(jù)的索引(B+Tree)一個機器的內(nèi)存放不下時。3.訪問量(讀寫混合)一個實例不能承受。只有當(dāng)以上3件事情任何一件或多件滿足時,我們才需要考慮往下一級演變。從此我們可以看出,事實上對于很多小公司小應(yīng)用,這種架構(gòu)已經(jīng)足夠滿足他們的需求了。在V1.0架構(gòu)下,數(shù)據(jù)存儲的瓶頸:25V2.0垂直拆分一般當(dāng)V1.0遇到瓶頸時,首先最簡便的拆分方法就是垂直拆分,何謂垂直?就是從業(yè)務(wù)角度來看,將關(guān)聯(lián)性不強的數(shù)據(jù)拆分到不同的instance上,從而達到消除瓶頸的目標(biāo)。以圖中的為例,將用戶信息數(shù)據(jù),和業(yè)務(wù)數(shù)據(jù)拆分到不同的三個實例上。對于重復(fù)讀類型比較多的場景,我們還可以加一層cache,來減少對DB的壓力。APPCacheDALMySQLInstanceMySQLInstanceMySQLInstanceuserinfo1userinfo2userinfoV2.0垂直拆分一般當(dāng)V1.0遇到瓶頸時,首先最簡便的拆26在V2.0的架構(gòu)下,數(shù)據(jù)存儲的瓶頸:1.單實例單業(yè)務(wù)依然存在V1.0所述瓶頸遇到瓶頸時可以考慮往本文更高V版本升級,若是讀請求導(dǎo)致達到性能瓶頸可以考慮往V3.0升級,其他瓶頸考慮往V4.0升級。在V2.0的架構(gòu)下,數(shù)據(jù)存儲的瓶頸:27V3.0主從架構(gòu)此類架構(gòu)主要解決V2.0架構(gòu)下的讀問題,通過給Instance掛數(shù)據(jù)實時備份的思路來遷移讀取的壓力,在Mysql的場景下就是通過主從結(jié)構(gòu),主庫抗寫壓力,通過從庫來分擔(dān)讀壓力,對于寫少讀多的應(yīng)用,V3.0主從架構(gòu)完全能夠勝任。APPCacheDALMSSuserinfowriteuserinforeaduserinforeadV3.0主從架構(gòu)此類架構(gòu)主要解決V2.0架構(gòu)下的讀問題,通28在V3.0的架構(gòu)下,數(shù)據(jù)存儲的瓶頸是什么?1.寫入量主庫不能承受在V3.0的架構(gòu)下,數(shù)據(jù)存儲的瓶頸是什么?29V4.0水平拆分對于V2.0V3.0方案遇到瓶頸時,都可以通過水平拆分來解決,水平拆分和垂直拆分有較大區(qū)別,垂直拆分拆完的結(jié)果,在一個實例上是擁有全量數(shù)據(jù)的,而水平拆分之后,任何實例都只有全量的1/n的數(shù)據(jù),以下圖userinfo的拆分為例,將userinfo拆分為2個cluster,每個cluster持有總量的1/2數(shù)據(jù),2個cluster數(shù)據(jù)的總和等于一份完整數(shù)據(jù)(注:這里不再叫單個實例而是叫一個cluster代表包含主從的一個小mysql集群)V4.0水平拆分對于V2.0V3.0方案遇到瓶頸時,都可30APPCacheDALMSSmysqlclusterMSSmysqlclusterAPPCacheDALMSSmysqlclusterMSS31Mysql-mmm1>Mysql-mmm簡介2>mysql-mmm組成與原理3>mysql-mmm架構(gòu)介紹Mysql-mmm1>Mysql-mmm簡介32Atlas1>atlas簡介2>atlas主要功能3>atlas架構(gòu)介紹Atlas1>atlas簡介33Mysql-mmm簡介
MMM(Master-MasterreplicationmanagerforMysql)是一套靈活的腳本程序,用來對mysqlreplication進行監(jiān)控和故障遷移,并能管理mysqlMaster-Master復(fù)制的配置(同一時間只有一個節(jié)點是可寫的)。附帶的工具套件可以實現(xiàn)多個slaves的read負載均衡,因此你可以使用這個工具移除一組服務(wù)器中復(fù)制延遲較高的服務(wù)器的虛擬IP,它還可以備份數(shù)據(jù),兩節(jié)點之間再同步等等。Mysql-mmm簡介MMM(Master-M34mysql-mmm組成與原理Mysql-mmm的管理功能主要通過三個腳本來實現(xiàn)1>mmm_mond監(jiān)控進程,負責(zé)所有的監(jiān)控工作,決定和處理所有節(jié)點角色活動。此腳本需要在監(jiān)管機上運行。2>mmm_agentd運行在每個mysql服務(wù)器上的代理進程,完成監(jiān)控的探針工作和執(zhí)行簡單的遠端服務(wù)設(shè)置。此腳本需要在被監(jiān)管機上運行。3>mmm_control一個簡單的腳本,提供管理mmm_mond進程的命令mysql-mmm的監(jiān)管端會提供多個虛擬IP(VIP),包括一個可寫VIP,多個可讀VIP,通過監(jiān)管的管理,這些IP會綁定在可用mysql之上,當(dāng)某一臺mysql宕機時,監(jiān)管機會將VIP遷移至其他mysql。mysql-mmm組成與原理Mysql-mmm的管理功能主要35mysql-mmm架構(gòu)介紹優(yōu)點:高可用性,擴展性好,出現(xiàn)故障自動切換,對于主主同步,在同一時間只提供一臺數(shù)據(jù)庫寫操作,保證的數(shù)據(jù)的一致性。缺點:Monitor節(jié)點是單點,可以Keepalived實現(xiàn)高可用,對大規(guī)模寫入操作有瓶頸。mysql-mmm架構(gòu)介紹36MySQL高可用集群分享-5課件37atlas簡介A
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 法制史試題及答案
- 廠級教育培訓(xùn)試題及答案
- 義烏公務(wù)員考試題及答案
- ABB(中國)招聘面試題及答案
- 骨髓炎的中醫(yī)護理方法
- 2026飛鶴乳業(yè)(寧夏)生態(tài)牧業(yè)有限公司招聘18人參考題庫必考題
- “夢想靠岸”招商銀行溫州分行2026校園招聘參考題庫附答案
- 中共雅安市委辦公室互聯(lián)網(wǎng)信息中心2025年公開選調(diào)事業(yè)人員的(2人)備考題庫必考題
- 樂山市公安局2025年第四批次警務(wù)輔助人員招聘(40人)參考題庫必考題
- 內(nèi)江師范學(xué)院2025年下半年公開選調(diào)工作人員(2人)備考題庫附答案
- 綜合布線辦公樓布線方案
- 鞍鋼檢驗報告
- 河南省信陽市2023-2024學(xué)年高二上學(xué)期期末教學(xué)質(zhì)量檢測數(shù)學(xué)試題(含答案解析)
- 北師大版七年級上冊數(shù)學(xué) 期末復(fù)習(xí)講義
- 2023年初級經(jīng)濟師《初級人力資源專業(yè)知識與實務(wù)》歷年真題匯編(共270題)
- 赤峰南臺子金礦有限公司金礦2022年度礦山地質(zhì)環(huán)境治理計劃書
- 氣穴現(xiàn)象和液壓沖擊
- 公民健康素養(yǎng)知識講座課件
- 銷軸連接(-自編)
- GB/T 15623.2-2003液壓傳動電調(diào)制液壓控制閥第2部分:三通方向流量控制閥試驗方法
- 英語音標(biāo)拼讀練習(xí)
評論
0/150
提交評論