MySQL Router 8.0.18 官方版【x64】

2022-07-09發(fā)布者:lisi大?。?/span> 下載:0

文件大小:

軟件介紹

MySQL Router是一個(gè)輕量級(jí)的中間件,提供了應(yīng)用程序與后端數(shù)據(jù)庫(kù)的透明路由,是mysql用來(lái)實(shí)現(xiàn)負(fù)載均衡和高可用功能。同時(shí)router也提供了使用fabric 高可用的方式。MySQL Router就是一個(gè)輕量級(jí)的中間件用來(lái)實(shí)現(xiàn)高可用和擴(kuò)展性的功能。MySQL Fabric最大的一個(gè)缺點(diǎn)是應(yīng)用需要改造,用Fabric獨(dú)有的Java或python驅(qū)動(dòng),并且目前只支持Java,Python php語(yǔ)言,即MySQL Fabric是在驅(qū)動(dòng)層面實(shí)現(xiàn)的高可用和擴(kuò)展功能。而MySQL Router是一個(gè)中間件,該中間的訪問(wèn)協(xié)議與MySQL一致,應(yīng)用不需要做任何的修改。

image.png

MySQL Router配置文件:
[DEFAULT]
logging_folder = /var/log/mysqlrouter
[logger]
level = INFO
[routing:failover]
bind_address = 10.166.224.50
bind_port = 7001
max_connections = 1024
mode = read-write
destinations = 10.166.224.33:3310,10.166.224.34:3310
[routing:balancing]
bind_address = 10.166.224.50
bind_port = 7002
connect_timeout = 3
max_connections = 1024
mode = read-only
destinations = 10.166.224.33:3310,10.166.224.34:3310
通過(guò)該配置文件啟動(dòng)MySQL Router會(huì)監(jiān)聽(tīng)兩個(gè)端口10.166.224.50:7001和10.166.224.50:7002。10.166.224.50:7001是一個(gè)高可用的端口(mode=read-write),通過(guò)7001的端口訪問(wèn)MySQL Router中間件會(huì)首先將請(qǐng)求發(fā)送到服務(wù)器10.166.224.33:3310,如果確定該服務(wù)器宕機(jī),則會(huì)發(fā)送到服務(wù)器10.166.224.34:3310。10.166.224.50:7002是一個(gè)負(fù)載均衡的端口,每個(gè)都請(qǐng)求可以將通過(guò)roundrobin的方式發(fā)送到destiantions對(duì)應(yīng)的MySQL服務(wù)器。通過(guò)MySQL Router用戶可以快速實(shí)現(xiàn)一個(gè)簡(jiǎn)單的帶有讀寫分離的高可用集群。MySQL Router甚至可以鏈接MySQL Fabric的元數(shù)據(jù)庫(kù),具體可查看MySQL Router的相關(guān)文檔。
測(cè)試體驗(yàn):
MySQL Router之前官方的中間件是MySQL Proxy,這么多年一直是alpha版本,堪稱業(yè)界奇跡。不過(guò)隨著MySQL Router的發(fā)布,官網(wǎng)其實(shí)已經(jīng)無(wú)法直接下載MySQL Proxy了。但I(xiàn)nside君還是決定對(duì)MySQL Router和MySQL Proxy做一個(gè)簡(jiǎn)單的性能測(cè)試。測(cè)試場(chǎng)景是全內(nèi)存的SELECT操作,測(cè)試工具使用sysbench,測(cè)試環(huán)境是網(wǎng)易云主機(jī)。最終的測(cè)試結(jié)果如下圖所示:
測(cè)試使用16線程的select.lua腳本的測(cè)試,對(duì)比遠(yuǎn)程客戶端直連MySQL,遠(yuǎn)程客戶端連接MySQL Router,遠(yuǎn)程客戶端連接到MySQL Proxy,后兩者需要再進(jìn)行一個(gè)轉(zhuǎn)發(fā)才能連接到目的MySQL數(shù)據(jù)庫(kù),因此性能肯定會(huì)比直連MySQL方式要差。從結(jié)果看MySQL Router比直連MySQL性能要差15%,QPS平均值接近20000。但是MySQL Proxy的測(cè)試結(jié)果QPS僅5700,簡(jiǎn)直慘不忍睹。導(dǎo)致這樣結(jié)果最重要的原因是MySQL Proxy采用使用lua腳本語(yǔ)言,測(cè)試過(guò)程中CPU負(fù)載高達(dá)290%(4核CPU)。MySQL Proxy測(cè)試過(guò)程中CPU的使用率在50%左右,表現(xiàn)較為平穩(wěn)。
看來(lái)MySQL Router用來(lái)做負(fù)載均衡是一個(gè)不錯(cuò)的選擇,特別是用來(lái)做高可用架構(gòu)下的只讀VIP,那么對(duì)比傳統(tǒng)的LVS性能又會(huì)是怎樣呢?接著Inside君又對(duì)比了MySQL Router和LVS的負(fù)載均衡性能測(cè)試對(duì)比,同樣是SELECT全內(nèi)存測(cè)試,但是并發(fā)數(shù)提升至128個(gè)線程。測(cè)試結(jié)果如下所示:
可以發(fā)現(xiàn)在128個(gè)線程下單實(shí)例MySQL直連模式和MySQL Router中間件模式已經(jīng)沒(méi)有太大的區(qū)別,QPS都在26000左右。當(dāng)采用兩個(gè)MySQL實(shí)例實(shí)現(xiàn)只讀操作的負(fù)載均衡時(shí),可以發(fā)現(xiàn)MySQL Router的QPS在48000左右,而LVS模式在52000左右,性能提升8%,更為重要的是LVS轉(zhuǎn)發(fā)服務(wù)器上基本沒(méi)有什么負(fù)載。
MySQL Router優(yōu)點(diǎn):
上手快,很容易配置
較為穩(wěn)定,性能中沒(méi)有遇到什么問(wèn)題
插件式的架構(gòu)允許用戶進(jìn)行額外功能的擴(kuò)展
僅支持簡(jiǎn)單的負(fù)載均衡功能
高可用功能有待進(jìn)一步測(cè)試
雖然支持Fabric元數(shù)據(jù),但是不支持分庫(kù)分表(不得不說(shuō)是一個(gè)遺憾)
白名單,SQL統(tǒng)計(jì)功能,防火墻功能缺失
需要gcc 4.8以上版本支持,老系統(tǒng)編譯比較麻煩些

發(fā)表評(píng)論(共0條評(píng)論)
請(qǐng)自覺(jué)遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī),評(píng)論內(nèi)容只代表網(wǎng)友觀點(diǎn),發(fā)表審核后顯示!

版權(quán)聲明:

1 本站所有資源(含游戲)均是軟件作者、開(kāi)發(fā)商投稿,任何涉及商業(yè)盈利目的均不得使用,否則產(chǎn)生的一切后果將由您自己承擔(dān)!

2 本站將不對(duì)任何資源負(fù)法律責(zé)任,所有資源請(qǐng)?jiān)谙螺d后24小時(shí)內(nèi)刪除。

3 若有關(guān)在線投稿、無(wú)法下載等問(wèn)題,請(qǐng)與本站客服人員聯(lián)系。

4 如侵犯了您的版權(quán)、商標(biāo)等,請(qǐng)立刻聯(lián)系我們并具體說(shuō)明情況后,本站將盡快處理刪除,聯(lián)系QQ:2499894784

返回頂部