本文我們來分享關于Memcache查看列出所有key方法及利用memkeys實時查看memcached key使用情況,smemkeys是tumblr開源的類似top的工具,可用于實時查看memcached的key使用情況.
Memcache 查看列出所有key方法
今天在做一個Memcache的session測試,但是在測試的過程中,發現Memcache沒有一個比較簡單的方法可以直接象redis那樣keys *列出所有的Session key,并根據key get對應的session內容,于是,我開始查找資料,翻出來的大部分是一些memcache常用命令等,但是對列出key的辦法,講解卻不多,于是來到google,找到了一個國外的資料.
具體的內容我套用我的測試環境中,操作如下.
1.cmd上登錄memcache
> telnet 127.0.0.1 11211
2.列出所有keys
- stats items // 這條是命令
- STAT items:7:number 1
- STAT items:7:age 188
- END
3.通過itemid獲取key
接下來基于列出的items id,本例中為7,第2個參數為列出的長度,0為全部列出.
- stats cachedump 7 0 // 這條是命令
- ITEM Sess_sidsvpc1473t1np08qnkvhf6j2 [183 b; 1394527347 s]
- END
4.通過get獲取key值
上面的stats cachedump命令列出了我的session key,接下來就用get命令查找對應的session值.
- get Sess_sidsvpc1473t1np08qnkvhf6j2 //這條是命令
- VALUE
- Sess_sidsvpc1473t1np08qnkvhf6j2 1440 1
- 83
- Sess_|a:5:{s:6:"verify";s:32:"e70981fd305170c41a5632b2a24bbcaa";s:3:"uid";s:1:"1 //開源軟件:Vevb.com
- ";s:8:"username";s:5:"admin";s:9:"logintime";s:19:"2014-03-11 16:24:25";s:7:"log
- inip";s:9:"127.0.0.1";}
memkeys實時查看memcached key使用情況
memkeys
memkeys是tumblr開源的類似top的工具,可用于實時查看memcached的key使用情況.
memkeys安裝
安裝autoconf(要求版本2.68以上):
- # wget -c http://ftp.gnu.org/gnu/autoconf/autoconf-latest.tar.gz
- # tar zxvf autoconf-latest.tar.gz
- # cd autoconf-2.69
- # ./configure
- # make && make install
安裝其它依賴:
# yum install libpcap-devel pcre-devel ncurses-devel
安裝memkeys:
- # git clone https://github.com/tumblr/memkeys.git
- # cd memkeys
- # ./autogen.sh
- # ./configure
- # make && make install
memkeys使用:
- # memkeys -h
- Usage: memkeys -i NIC [options]
- -d, --discard=THRESH Discard keys where req/s rate is below THRESH
- -i, --interface=NIC Network interface to capture traffic on (required)
- -p, --port=PORT Network port to capture memcache traffic on (default 11211)
- -r, --refresh=INTERVAL Refresh the stats display every INTERVAL ms (default 500)
- -l, --logfile=FILE Output logs to FILE
- -R, --report=REPORT Output data in REPORT format (CSV or curses, default curses)
- -h, --help This help
- -v, --verbose Increase verbosity. May be used multiple times.
- -V, --version Show program info and exit.
例子1:# memkeys -i eth0 -l /tmp/memkeys.log
例子2:# memkeys -i eth0 -d 10.0 -l /tmp/memkeys.log
新聞熱點
疑難解答