W3Cschool
恭喜您成為首批注冊(cè)用戶(hù)
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
如果一臺(tái)機(jī)器上防止多個(gè)redis實(shí)例,為了防止上下文切換導(dǎo)致的開(kāi)銷(xiāo),可以采用taskset。taskset是LINUX提供的一個(gè)命令(ubuntu系統(tǒng)可能需要自行安裝,schedutils package)。他可以讓某個(gè)程序運(yùn)行在某個(gè)(或)某些CPU上。
1)顯示進(jìn)程運(yùn)行的CPU (6137為redis-server的進(jìn)程號(hào))
[redis@hadoop1 ~]$ taskset -p 6137
pid 6137's current affinity mask: f
顯示結(jié)果的f實(shí)際上是二進(jìn)制4個(gè)低位均為1的bitmask,每一個(gè)1對(duì)應(yīng)于1個(gè)CPU,表示該進(jìn)程在4個(gè)CPU上運(yùn)行
2)指定進(jìn)程運(yùn)行在某個(gè)特定的CPU上
[redis@hadoop1 ~]$ taskset -pc 3 6137
pid 6137's current affinity list: 0-3
pid 6137's new affinity list: 3
注:3表示CPU將只會(huì)運(yùn)行在第4個(gè)CPU上(從0開(kāi)始計(jì)數(shù))。
3)進(jìn)程啟動(dòng)時(shí)指定CPU
taskset -c 1 ./redis-server ../redis.conf
參數(shù):OPTIONS -p, --pid operate on an existing PID and not launch a new task
-c, --cpu-list specify a numerical list of processors instead of a bitmask. The list may contain multiple items, separated by comma, and ranges. For example, 0,5,7,9-11.
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話(huà):173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: