关于Memcached的总结
由于有机会通过telnet与Memcached(版本1.4.14)进行互动,我想简要总结一下。
■ 通过telnet从本地服务器连接到Memcached服务器
telnet サーバーのアドレス 11211(memcache用に開けているポート)
通过使用stats命令了解情况
如果输入”stats”,会以以下方式显示。
stats
STAT pid 32949
STAT uptime 619521
STAT time 1390916003 起動時間
STAT version 1.4.15 バージョン
STAT libevent 1.4.13-stable
STAT pointer_size 64 64bitのマシンで動いているよ
STAT rusage_user 11.272286
STAT rusage_system 35.064669
STAT curr_connections 16 現在のコネクション数
STAT total_connections 7647 今までのコネクション数
STAT connection_structures 97
STAT reserved_fds 20
STAT cmd_get 193746 今までgetした数
STAT cmd_set 21925 今までsetした数
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 185834 getでhitした数
STAT get_misses 7912 getしてhitしなかった数
STAT delete_misses 5200
STAT delete_hits 128
STAT incr_misses 0
STAT incr_hits 29
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 27488093
STAT bytes_written 465934236
STAT limit_maxbytes 67108864 memcachedの最大容量
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT bytes 1930098
STAT curr_items 1044 現在のアイテム数
STAT total_items 21954 アイテム数の累計
STAT expired_unfetched 211
STAT evicted_unfetched 0
STAT evictions 0
STAT reclaimed 303
END
请使用缓存命中率(get_hits / cmd_get * 100)进行计算。显而易见,命中率越高,表示我们能更有效地利用缓存。
就我个人而言,我很想知道缓存命中率的平均水平是多少……
获取已经在stats items中缓存的记录信息。
stats items
STAT items:1:number 17
STAT items:1:age 38455
STAT items:1:evicted 0
STAT items:1:evicted_nonzero 0
STAT items:1:evicted_time 0
STAT items:1:outofmemory 0
STAT items:1:tailrepairs 0
STAT items:1:reclaimed 1
STAT items:1:expired_unfetched 0
STAT items:1:evicted_unfetched 0
STAT items:3:number 104
STAT items:3:age 162625
STAT items:3:evicted 0
STAT items:3:evicted_nonzero 0
STAT items:3:evicted_time 0
STAT items:3:outofmemory 0
STAT items:3:tailrepairs 0
STAT items:3:reclaimed 35
STAT items:3:expired_unfetched 20
STAT items:3:evicted_unfetched 0
虽然我对这个方面的了解还不是很清楚,但是我正在注意是否有很多的outofmemory错误。如果应用程序发生SoketTimeout系列错误,我认为很可能是与outofmemory错误有关。由于我们还在进行验证,所以这只是初步的推测。。。
倾倒废物
stats cachedump 1(itemsの番号) 100(limit)
ITEM USER_SEQ [6 b; 1390296482 s]
ITEM COMPANY_SEQ [6 b; 1390296482 s]
ITEM POST_SEQ [6 b; 1390296482 s]
查看缓存的内容
get USER_SEQ
VALUE USER_SEQ 0 6
337509
END
可以使用KEY名来查看缓存的内容。
## キャッシュを削除する
delete USER_SEQ
您可以通过删除KEY名来删除相应的缓存。