分布式數據庫DDM Sidecar模式負載均衡

      網友投稿 714 2022-05-30

      1?簡介

      分布式數據庫中間件?DDM

      分布式數據庫中間件(Distributed Database Middleware)是解決數據庫容量、性能瓶頸和分布式擴展問題的中間件服務,提供分庫分表、讀寫分離、彈性擴容等能力,應對海量數據的高并發訪問場景,有效提升數據庫讀寫性能。

      MySQL Router

      mysql-router是mysql官方的輕量級的中間件,用于取代MySQL Proxy應用程序像訪問MySQL一樣訪問MySQL?Router,由MySQL?Router將數據轉發給后端的DDM節點,實現Sidecar模式負載均衡。

      Sidecar模式是一種從應用程序本身剝離應用程序功能作為單獨進程的方法。此模式允許我們向應用無侵入添加多種功能,從而無需向應用程序添加其他配置代碼。建議MySQL Router與應用程序部署在同一臺機器做Sidecar模式負載均衡,相對于服務端形式的負載均衡,Sidecar模式實現負載均衡可以縮短調用鏈路,減少服務端中心節點的壓力,去中心化,使用更加可靠更加高效。

      參考資料:

      分布式數據(DDM)

      https://www.huaweicloud.com/product/ddm.html

      MySQL Router文檔

      https://dev.mysql.com/doc/mysql-router/8.0/en/

      https://dev.mysql.com/doc/mysql-router/8.0/en/mysql-router-conf-options.html

      mysql-router-8.0.11-linux-glibc2.12-x86-64bit.tar.gz

      2?部署Mysql-Router服務

      #?解壓安裝程序文件

      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

      #?創建日志和配置相關文件存放目錄

      cd /usr/local/mysqlrouter

      mkdir logs

      mkdir etc

      #?利用模板文件創建配置文件

      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 &

      3配置文件詳解

      首先,獲取DDM連接串,如下圖所示

      下面詳細介紹mysql-router三種配置方式:

      I、作為中心代理節使用

      mysql-router綁定IP不限制,即監聽所有ip,任意節點都可以訪問,作為數據庫訪問代理,輪詢DDM各個節點。其中,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 ?? #?負載均衡配置? [routing:balancing]? #?綁定的IP地址? bind_address=0.0.0.0? #?監聽的端口? bind_port?=?7002? #?連接超時時間(秒)? connect_timeout?=?3? #?最大連接數? max_connections?=?100? #?后端服務器地址.默認讀進行輪詢? destinations?=?192.168.4.235:5066,192.168.4.231:5066? #?路由策略? routing_strategy=round-robin ?? [keepalive] interval?=?60

      連接示例:

      [root@xxx?]#?./mysql?-uddmtest?-h128.11.2.2?-P7002?-p? Enter?password: ?? mysql>

      128.11.2.2為Mysql Router所在IP

      II、作為本地數據庫代理使用

      mysql-router綁定本地地址127.0.0.1,作為本地數據庫訪問代理,僅允許當前節點訪問數據庫。其要求需要訪問數據庫的應用與router部署在同一節點,更安全可靠。

      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 ?? #?負載均衡配置? [routing:balancing]? #?綁定的IP地址? bind_address=127.0.0.1? #?監聽的端口? bind_port?=?7002? #?連接超時時間(秒)? connect_timeout?=?3? #?最大連接數? max_connections?=?100? #?后端服務器地址.默認讀進行輪詢? destinations?=?192.168.4.235:5066,192.168.4.231:5066? #?路由策略? routing_strategy=round-robin ?? [keepalive] interval?=?60

      連接示例:

      [root@xxx?]#?./mysql?-uddmtest?-h127.0.0.1?-P7002?-p? Enter?password: ?? mysql>

      mysql客戶端與Mysql Router在同一節點。

      分布式數據庫DDM Sidecar模式負載均衡

      III、作為本地數據庫代理,使用Unix sockets連接(推薦)

      mysql-router不綁定ip和端口,只使用Unix sockets連接,這樣可以不經過tcp協議轉發數據,只走操作系統socket通道,更加高效。其同樣要求需要訪問數據庫的應用與router部署在同一節點,但是安全可靠,且高效。

      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 ?? #?負載均衡配置? [routing:balancing]? #?綁定的IP端口? socket?=?/tmp/mysqlrouter.sock? #?連接超時時間(秒)? connect_timeout?=?3? #?最大連接數? max_connections?=?100? #?后端服務器地址.默認讀進行輪詢? 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在同一節點。

      華為云 分布式數據庫中間件 DDM

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:AJAX個人總結
      下一篇:UWP 手繪視頻創作工具技術分享系列 - Ink & Surface Dial
      相關文章
      国产亚洲日韩在线a不卡| 一本色道久久综合亚洲精品| 亚洲AV成人精品一区二区三区 | 亚洲精品影院久久久久久| 在线日韩日本国产亚洲| 国产精品亚洲高清一区二区| 最新亚洲人成无码网站| 国产偷国产偷亚洲清高APP| 亚洲1区2区3区精华液| 久久水蜜桃亚洲AV无码精品 | 亚洲一区二区三区乱码在线欧洲| 亚洲va精品中文字幕| 国产精品亚洲精品观看不卡| 亚洲一区免费在线观看| 亚洲va在线va天堂va手机| 亚洲人配人种jizz| 亚洲综合精品成人| 亚洲欧美国产欧美色欲| 亚洲6080yy久久无码产自国产 | 亚洲Aⅴ在线无码播放毛片一线天 亚洲avav天堂av在线网毛片 | 国产精品亚洲色图| 亚洲免费日韩无码系列| 精品亚洲一区二区三区在线播放 | 亚洲女同成人AⅤ人片在线观看 | 在线日韩日本国产亚洲| 国产亚洲精品岁国产微拍精品| 亚洲国产精品无码专区在线观看| 亚洲AV成人无码网天堂| 亚洲αⅴ无码乱码在线观看性色| 亚洲一卡一卡二新区无人区| 亚洲男人的天堂网站| 无码天堂va亚洲va在线va| 国产av无码专区亚洲av毛片搜| 亚洲爆乳大丰满无码专区| 亚洲国产成人久久一区WWW| 国产成人毛片亚洲精品| 亚洲爆乳无码一区二区三区| 亚洲视频在线观看网址| 亚洲一区欧洲一区| av无码东京热亚洲男人的天堂| 国产亚洲美女精品久久久|