非一致存儲(chǔ)訪(fǎng)問(wèn)結(jié)構(gòu) (NUMA : Non-Uniform Memory Access) 也是最新的內(nèi)存管理技術(shù)。它和對(duì)稱(chēng)多處理器結(jié)構(gòu) (SMP : Symmetric Multi-Processor) 是對(duì)應(yīng)的。
MySQL在NUMA架構(gòu)上會(huì)出現(xiàn)的問(wèn)題:
1).CPU規(guī)模因摩爾定律指數(shù)級(jí)發(fā)展,而總線(xiàn)發(fā)展緩慢,導(dǎo)致多核CPU通過(guò)一條總線(xiàn)共享內(nèi)存成為瓶頸
2).于是NUMA出現(xiàn)了,CPU平均劃分為若干個(gè)Chip(不多于4個(gè)),每個(gè)Chip有自己的內(nèi)存控制器及內(nèi)存插槽
3).CPU訪(fǎng)問(wèn)自己Chip上所插的內(nèi)存時(shí)速度快,而訪(fǎng)問(wèn)其他CPU所關(guān)聯(lián)的內(nèi)存(下文稱(chēng)Remote Access)的速度相較慢三倍左右
4).于是Linux內(nèi)核默認(rèn)使用CPU親和的內(nèi)存分配策略,使內(nèi)存頁(yè)盡可能的和調(diào)用線(xiàn)程處在同一個(gè)Core/Chip中
5).由于內(nèi)存頁(yè)沒(méi)有動(dòng)態(tài)調(diào)整策略,使得大部分內(nèi)存頁(yè)都集中在CPU 0上
6).又因?yàn)镽eclaim默認(rèn)策略?xún)?yōu)先淘汰/Swap本Chip上的內(nèi)存,使得大量有用內(nèi)存被換出
7).當(dāng)被換出頁(yè)被訪(fǎng)問(wèn)時(shí)問(wèn)題就以數(shù)據(jù)庫(kù)響應(yīng)時(shí)間飆高甚至阻塞的形式出現(xiàn)了
因此MySQL單機(jī)單實(shí)例,建議關(guān)閉NUMA,關(guān)閉的方法有三種:
1.硬件層,在BIOS中設(shè)置關(guān)閉;
2.OS內(nèi)核,啟動(dòng)時(shí)設(shè)置numa=off;
3.可以用numactl命令將內(nèi)存分配策略修改為interleave(交叉)
登錄Linux系統(tǒng),修改/etc/init.d/mysqld文件,加上numactl --interleave all
vi /etc/init.d/mysqld
找到如下行
# Give extra arguments to mysqld with the my.cnf file. This script
# may be overwritten at next upgrade.
$bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null &
wait_for_pid created "$!" "$mysqld_pid_file_path"; return_value=$?
將$bindir/mysqld_safe --datadir="$datadir"這一行修改為:
/usr/bin/numactl --interleave all $bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null &
wait_for_pid created "$!" "$mysqld_pid_file_path"; return_value=$?
然后重啟MySQL服務(wù).
#service mysqld restart
網(wǎng)頁(yè)標(biāo)題:MySQL5.7關(guān)閉NUMA方法
網(wǎng)站地址:http://chinadenli.net/article28/ppcecp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、關(guān)鍵詞優(yōu)化、App設(shè)計(jì)、網(wǎng)站策劃、網(wǎng)站建設(shè)、動(dòng)態(tài)網(wǎng)站
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源:
創(chuàng)新互聯(lián)