您好,登錄后才能下訂單哦!
Memcache異常超時診斷工具mctop怎么用,相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
昨天排查MC連接超時發(fā)現(xiàn),發(fā)現(xiàn)同時是一個業(yè)務(wù)的另一個MC未發(fā)現(xiàn)異常,通過監(jiān)控發(fā)現(xiàn)網(wǎng)絡(luò)未丟包但兩MC的流量明顯不一致,在連接數(shù)基本相同的情況下帶寬出現(xiàn)3倍的差別,可以斷定是業(yè)務(wù)調(diào)用的某個key的value值過大導(dǎo)致的。
好吧,知道原因了該如何定位到哪個key呢?以下是一般的做法:
通過抓包發(fā)現(xiàn)調(diào)用的頻繁的請求數(shù)據(jù)包;
通過MC協(xié)議分析是否該key值異常過大;
貌似你有點(diǎn)暈了,呵呵,這種方法是很繁瑣,定位原因比較慢,有沒有更好的方法呢?下面就介紹下mctop
mctop是開源的一個檢測工具,依靠ruby的pcap進(jìn)行抓包分析,該包下載地址 GITHUP https://github.com/etsy/mctop
解壓執(zhí)行下:
# ./mctop
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- pcap (LoadError)
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from ./../lib/cmdline.rb:2
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from ./mctop:10
通過報錯了解到,需要裝pcap,但發(fā)現(xiàn)裝完還是有問題,沒辦法升級下ruby吧,我現(xiàn)在是1.8.7升級至1.9.2下載地址后,需要安裝以下組件
#/usr/local/bin/gem install bundle
#/usr/local/bin/gem install rake
#/usr/local/bin/gem install ruby-pcap
#rm -f /usr/bin/ruby
#ln -s /usr/local/bin/ruby /usr/bin/ruby
再運(yùn)行下
# ./mctop --help
Usage: mctop [options]
-i, --interface=NIC Network interface to sniff (required)
--host=HOST Network host to sniff on (default all)
-p, --port=PORT Network port to sniff on (default 11211)
-d, --discard=THRESH Discard keys with request/sec rate below THRESH
-r, --refresh=MS Refresh the stats display every MS milliseconds
-h, --help Show usage info
然后趕緊用它監(jiān)控一下異常的端口:
#./mctop -i eth2 --host=10.x.x.85 -p xxx -r 1000
如下圖
一眼就看到了,是esf-wordfilter__all的值過大占了4m/s的帶寬,通知業(yè)務(wù)部門優(yōu)化。
看完上述內(nèi)容,你們掌握Memcache異常超時診斷工具mctop怎么用的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。