memcached是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但被许多网站使用。这是一套开放源代码软件,以BSD license授权发布。
memcached作为高速运行的分布式缓存服务器,具有以下的特点。
·基于c/s__架构,协议简单
·基于libevent__的事件处理
·内置内存存储方式(slab allowcation__)
· memcached不互相通信的分布式
· 数据过期方式:Lazy Expiration 和 LRU
Mencached的数据流向
1.安装Memcached
安装必要memcached libmemcached libevent
# yum install -y memcached libmemcached libevent
开启memcached服务
# systemctl start memcached
2.查看memcached运行状态
# memcached-tool 127.0.0.1:11211 stats
#echo stats |nc 127.0.0.1 11211 //需要安装nc工具 yum install -y nc
#memstat --servers=127.0.0.1:11211 //安装memcached后可使用
#127.0.0.1:11211 Field Value
accepting_conns 1
auth_cmds 0
auth_errors 0
bytes 0
bytes_read 196
bytes_written 1172
cas_badval 0
cas_hits 0
cas_misses 0
cmd_flush 0
cmd_get 5
cmd_set 3
cmd_touch 0
conn_yields 0
connection_structures 11
curr_connections 10
curr_items 0
decr_hits 0
decr_misses 0
delete_hits 1
delete_misses 0
evicted_unfetched 0
evictions 0
expired_unfetched 0
get_hits 3
get_misses 2
hash_bytes 524288
hash_is_expanding 0
hash_power_level 16
incr_hits 0
incr_misses 0
libevent 2.0.21-stable
limit_maxbytes 67108864
listen_disabled_num 0
pid 2319
pointer_size 64
reclaimed 1
reserved_fds 20
rusage_system 0.041016
rusage_user 0.000131
threads 4
time 1646617228
total_connections 16
total_items 3
touch_hits 0
touch_misses 0
uptime 793
version 1.4.15
3.Memcached命令行
# yum install -y telnet nc
# telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
set key2 0 30 2
ab
STORED
get key2
VALUE key2 0 2
ab
END
4.Mencached数据示例
# telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
set key3 1 100 4
abcd
STORED
get key3
VALUE key3 1 4
abcd
END
replace key3 1 200 5
abcdx
STORED
get key3
VALUE key3 1 5
abcdx
END
delete key3
DELETED
get key3
END
5.Memcached数据导出和导入
# memcached-tool 127.0.0.1:11211 dump > data.txt
Dumping memcache contents
Number of buckets: 0
Number of items :
nc 127.0.0.1 11211 < data.txt