1、啟動Memcache 常用參數
-p <num> 設置TCP端口號(默認設置為: 11211) -U <num> UDP監聽端口(默認: 11211, 0 時關閉) -l <ip_addr> 綁定地址(默認:所有都允許,無論內外網或者本機更換IP,有安全隱患,若設置為127.0.0.1就只能本機訪問) -c <num> max simultaneous connections (default: 1024) -d 以daemon方式運行 -u <username> 綁定使用指定用於運行進程<username> -m <num> 允許最大內存用量,單位M (默認: 64 MB) -P <file> 將PID寫入文件<file>,這樣可以使得后邊進行快速進程終止, 需要與-d 一起使用
更多可以使用 memcached -h 在linux下:./usr/local/bin/memcached -d -u root -l 192.168.1.197 -m 2048 -p 12121 在window下:d:\App_Serv\memcached\memcached.exe -d RunService -l 127.0.0.1 -p 11211 -m 500 在windows下注冊為服務后運行: sc.exe create Memcached_srv binpath= “d:\App_Serv\memcached\memcached.exe -d RunService -p 11211 -m 500″start= auto net start Memcached
2、連接和退出
telnet 127.0.0.1 11211 quit
下面指定先要執行
telnet 127.0.0.1 11211
1、查看命令get key
查看指定key的緩存
2、存儲命令
(1)add key flag expire length
新增指定key的緩存
(2)set key flag expire length
設置指定key的緩存。若key存在,則replace替換,否則add新增
key 緩存的鍵 flag 標志,要求為一個正整數。用來標識數據原本的格式,以便后期對數據的處理。 expire 有效期。
小於30天的秒數(60*60*24*30秒),表示從設定開始,多少秒后失效。
大於30天的秒數(60*60*24*30秒),表示的距離1970年1月1日多少秒后失效,常用於定時。
0表示不自動失效,並不代表永久有效。 length 緩存的值的長度(以字節為單位)
3、修改命令replace key flag expire length
替換指定key緩存的值
4、刪除命令delete key [time]
刪除指定key的緩存。可選參數time,表示在刪除緩存后的多少秒內,不允許get,add,replace操作此key
5、計數命令incr key num
增加指定key的值的大小,num必須是數字decr key num
減少指定key的值的大小,num必須是數字
6、統計命令stats
統計memcached的運行信息
STAT pid 46673 #進程ID STAT uptime 25336 #服務器已運行秒數 STAT time 1494173893 #服務器當前unix時間戳 STAT version 1.4.13 #memcached版本號 STAT libevent 1.4.13-stable #libevent版本 STAT pointer_size 64 #操作系統位數,64位 STAT rusage_user 0.642902 #進程累計用戶時間 STAT rusage_system 0.303953 #進程累計系統時間 STAT curr_connections 10 #當前打開連接數 STAT total_connections 25 #memcached運行以來連接總數 STAT connection_structures 11 #memcached分配的連接結構數 STAT reserved_fds 20 #內部使用的FD數 STAT cmd_get 7 #執行get命令總數 STAT cmd_set 3 #執行set命令總數 STAT cmd_flush 0 #執行flush_all命令總數 STAT cmd_touch 0 #touch命令請求總數 STAT get_hits 3 #get命中次數 STAT get_misses 4 #get未命中次數 STAT delete_misses 0 #delete未命中次數 STAT delete_hits 1 #delete命中次數 STAT incr_misses 0 #incr未命中次數 STAT incr_hits 0 #incr命中次數 STAT decr_misses 0 #decr未命中次數 STAT decr_hits 0 #decr命中次數 STAT cas_misses 0 #cas未命中次數 STAT cas_hits 0 #cas命中次數 STAT cas_badval 0 #使用擦拭次數 STAT touch_hits 0 #touch命中次數 STAT touch_misses 0 #touch未命中次數 STAT auth_cmds 0 #認證命令處理次數 STAT auth_errors 0 #認證失敗數目 STAT bytes_read 358 #讀取字節總數 STAT bytes_written 160 #寫入字節總數 STAT limit_maxbytes 16777216#分配的內存總數(字節) STAT accepting_conns 1 #是否已達到連接最大數 1-達到 0-未達到 STAT listen_disabled_num 0 #統計當前服務器連接數曾經到達最大連接數的次數,這個數應該為0或者趨近於0,如果這個數不斷增長,就要小心了 STAT threads 4 #當前MemCache總進程數 STAT conn_yields 0 #連接操作主動放棄數目 STAT hash_power_level 16 #hash表等級 STAT hash_bytes 524288 #當前hash表大小 STAT hash_is_expanding 0 #hash表正在擴展 STAT expired_unfetched 0 #已過期但未獲取大對象數目 STAT evicted_unfetched 0 #一驅逐但未獲取大對象數目 STAT bytes 166 #當前存儲占用字節數 STAT curr_items 2 #當前存儲的數據總個數 STAT total_items 3 #啟動以來存儲的數據總數 STAT evictions 0 #LRU釋放的對象數目 STAT reclaimed 0 #已過期的數據數目來存儲新數據的數目
stats items
列出所有key
STAT items:1:number 4 #該slab中對象數(不包含過期對象) STAT items:1:age 1941 #LRU隊列中最老對象的過期時間 STAT items:1:evicted 0 #LRU釋放對象數 STAT items:1:evicted_nonzero 0 #設置了非0時間的LRU釋放對象數 STAT items:1:evicted_time 0 #最后一次LRU釋放的對象存在時間 STAT items:1:outofmemory 0 #不能存儲對象次數 STAT items:1:tailrepairs 0 #修復slabs次數 STAT items:1:reclaimed 0 #使用過期對象空間存儲對象次數 STAT items:1:expired_unfetched 0 #已過期但未獲取的對象數目 STAT items:1:evicted_unfetched 0 #已驅逐但未獲取的對象數目
其他命令:flush_all
清空所有的存儲對象緩存的命中率=命中次數/(命中次數+未命中次數)*100%