分布式數(shù)據(jù)庫DDM Sidecar模式如何部署負(fù)載均衡,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
婺城網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,婺城網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為婺城上1000+提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的婺城做網(wǎng)站的公司定做!
簡介
1.分布式數(shù)據(jù)庫中間件 DDM
分布式數(shù)據(jù)庫中間件(Distributed Database Middleware)是解決數(shù)據(jù)庫容量、性能瓶頸和分布式擴(kuò)展問題的中間件服務(wù),提供分庫分表、讀寫分離、彈性擴(kuò)容等能力,應(yīng)對海量數(shù)據(jù)的高并發(fā)訪問場景,有效提升數(shù)據(jù)庫讀寫性能。
2.MySQL Router
mysql-router是mysql官方的輕量級的中間件,用于取代MySQL Proxy應(yīng)用程序像訪問MySQL一樣訪問MySQL Router,由MySQL Router將數(shù)據(jù)轉(zhuǎn)發(fā)給后端的DDM節(jié)點,實現(xiàn)Sidecar模式負(fù)載均衡。
Sidecar模式是一種從應(yīng)用程序本身剝離應(yīng)用程序功能作為單獨進(jìn)程的方法。此模式允許我們向應(yīng)用無侵入添加多種功能,從而無需向應(yīng)用程序添加其他配置代碼。建議MySQL Router與應(yīng)用程序部署在同一臺機(jī)器做Sidecar模式負(fù)載均衡,相對于服務(wù)端形式的負(fù)載均衡,Sidecar模式實現(xiàn)負(fù)載均衡可以縮短調(diào)用鏈路,減少服務(wù)端中心節(jié)點的壓力,去中心化,使用更加可靠更加高效。
部署Mysql-Router服務(wù)
# 解壓安裝程序文件
tar -xzvf mysql-router-8.0.11-linux-glibc2.12-x86-64bit.tar.gz
# 重命名安裝文件夾
mv mysql-router-8.0.11-linux-glibc2.12-x86-64bit /usr/local/mysqlrouter
# 創(chuàng)建日志和配置相關(guān)文件存放目錄
cd /usr/local/mysqlrouter
mkdir logs
mkdir etc
# 利用模板文件創(chuàng)建配置文件
cp /usr/local/mysqlrouter/share/doc/mysqlrouter/sample_mysqlrouter.conf ./etc/mysqlrouter.conf
# 啟動 mysql router
/usr/local/mysqlrouter/bin/mysqlrouter -c /usr/local/mysqlrouter/etc/mysqlrouter.conf &
配置文件詳解
首先,獲取DDM連接串,如下圖所示:
下面詳細(xì)介紹mysql-router三種配置方式:
01
作為中心代理節(jié)使用
mysql-router綁定IP不限制,即監(jiān)聽所有ip,任意節(jié)點都可以訪問,作為數(shù)據(jù)庫訪問代理,輪詢DDM各個節(jié)點。其中,destinations為上文獲得的DDM連接串。
vi /usr/local/mysqlrouter/etc/mysqlrouter.conf
[DEFAULT]
logging_folder = /usr/local/mysqlrouter/log/
plugin_folder = /usr/local/mysqlrouter/lib/mysqlrouter/
config_folder = /usr/local/mysqlrouter/etc/
runtime_folder = /usr/local/mysqlrouter/run/
[logger]
level = INFO
# 負(fù)載均衡配置
[routing:balancing]
# 綁定的IP地址
bind_address=0.0.0.0
# 監(jiān)聽的端口
bind_port = 7002
# 連接超時時間(秒)
connect_timeout = 3
# 最大連接數(shù)
max_connections = 100
# 后端服務(wù)器地址.默認(rèn)讀進(jìn)行輪詢
destinations = 192.168.4.235:5066,192.168.4.231:5066
# 路由策略
routing_strategy=round-robin
[keepalive]
interval = 60
連接示例:
[root@xxx ]# ./mysql -uddmtest -h228.11.2.2 -P7002 -p
Enter password:
mysql>
128.11.2.2為Mysql Router所在IP。
02
作為本地數(shù)據(jù)庫代理使用
mysql-router綁定本地地址127.0.0.1,作為本地數(shù)據(jù)庫訪問代理,僅允許當(dāng)前節(jié)點訪問數(shù)據(jù)庫。其要求需要訪問數(shù)據(jù)庫的應(yīng)用與router部署在同一節(jié)點,更安全可靠。
vi /usr/local/mysqlrouter/etc/mysqlrouter.conf
[DEFAULT]
logging_folder = /usr/local/mysqlrouter/log/
plugin_folder = /usr/local/mysqlrouter/lib/mysqlrouter/
config_folder = /usr/local/mysqlrouter/etc/
runtime_folder = /usr/local/mysqlrouter/run/
[logger]
level = INFO
# 負(fù)載均衡配置
[routing:balancing]
# 綁定的IP地址
bind_address=127.0.0.1
# 監(jiān)聽的端口
bind_port = 7002
# 連接超時時間(秒)
connect_timeout = 3
# 最大連接數(shù)
max_connections = 100
# 后端服務(wù)器地址.默認(rèn)讀進(jìn)行輪詢
destinations = 192.168.4.235:5066,192.168.4.231:5066
# 路由策略
routing_strategy=round-robin
[keepalive]
interval = 60
連接示例:
[root@xxx ]# ./mysql -uddmtest -h227.0.0.1 -P7002 -p
Enter password:
mysql>
mysql客戶端與Mysql Router在同一節(jié)點。
03
作為本地數(shù)據(jù)庫代理,使用Unix sockets連接(推薦)
mysql-router不綁定ip和端口,只使用Unix sockets連接,這樣可以不經(jīng)過tcp協(xié)議轉(zhuǎn)發(fā)數(shù)據(jù),只走操作系統(tǒng)socket通道,更加高效。其同樣要求需要訪問數(shù)據(jù)庫的應(yīng)用與router部署在同一節(jié)點,但是安全可靠,且高效。
vi etc/mysqlrouter.conf
[DEFAULT]
logging_folder = /usr/local/mysqlrouter/log/
plugin_folder = /usr/local/mysqlrouter/lib/mysqlrouter/
config_folder = /usr/local/mysqlrouter/etc/
runtime_folder = /usr/local/mysqlrouter/run/
[logger]
level = INFO
# 負(fù)載均衡配置
[routing:balancing]
# 綁定的IP端口
socket = /tmp/mysqlrouter.sock
# 連接超時時間(秒)
connect_timeout = 3
# 最大連接數(shù)
max_connections = 100
# 后端服務(wù)器地址.默認(rèn)讀進(jìn)行輪詢
destinations = 192.168.4.235:5066,192.168.4.231:5066
# 路由策略
routing_strategy=round-robin
[keepalive]
interval = 60
其中,destinations為上文獲得的DDM連接串
連接示例:
[root@xxx ]# ./mysql -uddmtest -p -S /tmp/mysqlrouter.sock
Enter password:
mysql>
mysql客戶端與Mysql Router在同一節(jié)點。
關(guān)于分布式數(shù)據(jù)庫DDM Sidecar模式如何部署負(fù)載均衡問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。
新聞標(biāo)題:分布式數(shù)據(jù)庫DDMSidecar模式如何部署負(fù)載均衡
URL標(biāo)題:http://jinyejixie.com/article6/jjheig.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、定制網(wǎng)站、App設(shè)計、標(biāo)簽優(yōu)化、搜索引擎優(yōu)化、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)