您的位置:首页 > 数据库 > Memcache

memcache的用法详解整理

2016-03-22 00:00 417 查看
摘要: memcache 是集中式缓存,老牌的nosql缓存,整理一下具体的用法和细节

memcache的应用细节和整理

环境:linux centos6.5

memcached-1.4.20.tar.gz

安装步骤:

# tar -zxvf memcached-1.4.20.tar.gz

# cd memcached-1.4.20

# ./configure --prefix= /usr/local/memcached

# make

# make install

到此安装完成,

启动memcache

# cd /usr/local/memcached/bin

# ./memcached -p 11211 -d -u root -m 64 -vvv ### -p 启动端口 默认11211 可以指定别的端口 如11212 -d 守护进程 启动 -u root 启动用户 -m 64 启动的内存多大 -v 标准输出 -vvv 以标准输出在控制台上显示



如上图所示表示启动成功.

具体的使用如下:

增: add 往内存增加一行新记录

语法:add key flag expire length 回车
key 给值起一个独特的名字

flag 标志,要求为一个正整数

expire 有效期

length 缓存的长度(字节为单位)

flag 的意义: memcached 基本文本协议,传输的东西,理解成字符串来存储. 想:让你存一个对象,和一个 数组,怎么办? 答:序列化成字符串,往出取的时候,自然还要反序列化成 对象/数组/json 格式等等. 这时候,flag 的意义就体现出来了. 比如,1 就是字符串,2 反转成数组 3,反序列化对象.....

expire 的意义: 设置缓存的有效期,有 3 种格式 1:设置秒数, 从设定开始数,第 n 秒后失效. 2:时间戳, 到指定的时间戳后失效. 比如在团购网站,缓存的某团到中午 12:00 失效.add key 0 13792099996 3: 设为 0. 不自动失效.
注: 有种误会,设为 0,永久有效.错误的.
1:编译 memcached 时,指定一个最长常量,默认是 30 天. 所以,即使设为 0,30 天后也会失效. 2:可能等不到 30 天,就会被新数据挤出去.
delete 删除 deletekey [time seconds] 删除指定的 key. 如加可选参数 time,则指删除 key,并在删除 key 后的 time 秒内,不允许 get,add,replace 操作此 key.
replace 替换 replacekeyflagexpire length 参数和 add 完全一样,不单独写
get 查询 get key 返回 key 的值

incr,decr 命令:增加/减少值的大小 语法:

incr/decr key num

set age 0 0 2 28

stored

get age

value age 0 2 28

end


incr age 1

29

incr age 2

31

decr age 1

30

decr age 2

28

具体代码如下 add&& get

# telnet localhost 11211 ## 用telnet方式去连接

[kssadmin@localhost bin]$ telnet localhost 11211
Trying ::1...
Connected to localhost.
Escape character is '^]'.
add test 0 0 5 #### add 语法 add key flag expire length

hello
7fe0

STORED
get test #### get test get 语法 get key
VALUE test 0 5
hello
END

quit ### 退出

删除语法:

delete test ###delete key

DELETED
get test
END
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息