iT邦幫忙

0

關於 MariaDB I/O 吞吐量及叢集連接問題

  • 分享至 

  • xImage

直接進入正題 ...

小弟初學DB,照著「MariaDB Galera Cluster部署实战

確實搭建了三台Server,並成功連接叢集了

主節點:172.16.16.166
節點:172.16.16.165、172.16.16.167

三台規格:
Memory:8GB
CPU:1 sockets 2 cores
HHD:100G

https://ithelp.ithome.com.tw/upload/images/20190920/20114520pVtHTRwIlN.png

但是測試吞吐量的時候,單台叢集測試,
處理量:12/sec

但只要叢集連接三台就會大打折扣,變成 4/sec

https://ithelp.ithome.com.tw/upload/images/20190920/20114520y2Csol7mIO.png

Galera的相關配置

wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_name=galera_cluster
wsrep_cluster_address="gcomm://172.16.16.166,172.16.16.165,172.16.16.167"
wsrep_node_name=172.16.16.166
wsrep_node_address=172.16.16.166
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2

# myself_setting
max_connections=1500
innodb_buffer_pool_size=5G
innodb_buffer_pool_instances=5
back_log=900
# Necessary modification
max_connect_errors = 1844674407370954751
connect_timeout = 20
skip-name-resolve
slave_net_timeout = 30

後面我新增一行代碼

memlock   #將mysqld程序鎖定在記憶體中

吞吐量就立刻大增十倍之多

https://ithelp.ithome.com.tw/upload/images/20190920/20114520M3trIfRbpG.png

但是相對的,也導致三台叢集都無法連上

因此想詢問,是否有能連上三台叢集又能大幅增加吞吐量的辦法

因為卡一陣子了,所以上來尋找能請益的前輩 > . <

踏雪尋梅 iT邦研究生 5 級 ‧ 2019-09-20 14:50:18 檢舉
raytracy 剛好看到大大,在其他地方有回到相關訊息,所以冒險一問

https://ithelp.ithome.com.tw/questions/10192240
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
小魚
iT邦大師 1 級 ‧ 2019-09-20 10:35:09

你不能要求又要馬兒好,
又要馬兒不吃草吧,
叢集的目的是同步資料,
一方面備份,
一方面可以做負載平衡,
但是總是要付出一些代價的,
就像你用index加快了查詢速度,
但總是會拖累寫入速度的,
這就需要多嘗試跟需求評估了.

MySql是有很多參數要調整的,
你可以去找相關的資料,
這部份我也很久沒碰了,
也沒有研究的很深,
就麻煩你自己研究了.

踏雪尋梅 iT邦研究生 5 級 ‧ 2019-09-20 10:41:50 檢舉

嗯 ... 目前也是多加嘗試階段 :D

小魚 iT邦大師 1 級 ‧ 2019-09-20 10:53:56 檢舉

總之可以去查查
MySql 效能調校,
我記得也有相關的書,
一大本可以媲美百科全書了.

踏雪尋梅 iT邦研究生 5 級 ‧ 2019-09-20 11:56:55 檢舉

目前有找到「 locked_in_memory」的取代方式,但還不清楚如何使用這參數

我要發表回答

立即登入回答