一、安装和启动
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。
windows
- 安装:memcached.exe -d install
- 启动:memcached.exe -d start
centos7
- 安装:yum install -y memcached
- 启动:service memcached start
- 查看进程:ps -ef | grep memcached
- 杀死进程:kill -9 pid
- 设置启动参数:/usr/bin/memcached -u memcached -m 64 -p 11211 -l 0.0.0.0 -d start
- 参数说明:
- -d:这个参数是让memcached在后台运行
- -m:指定占用多少内存。一M位单位,默认为64M
- -p:指定占用的端口。默认端口是11211
- -l:指定哪些ip地址可以连接
二、telnet操作memcached
登录方式--->> telnet 【ip地址】【端口号】
telnet 127.0.0.1 11211
连接成功后按“空格”键,再按一下“Enter键”,然后就可以开始操作了,memcached存储数据是以键值对的方式存储
常用的命令
(1)set
在memcached中添加一个“key-value”,如果这个‘key’之前已经存在,那么就会替换,否则就是添加。
参数说明
- username:是设置的key
- 0:是否需要压缩
- 60:过期时间
- 5:value的字符长度
- derek:key的value
(2)get
从memcached中根据“key来”获取一个数据。
(3)add
给memcached添加键值对,如果memcached中之前存在了这个key,那么就添加失败,否则就添加成功。
(4)delete
删除memcached中的一个键值对
(5)flush_all
删除memcached中所有的键值对,所以要谨慎使用。
(6)incr
给memcached中的那些数字类型的值进行相加操作,都必须是数字类型,否则就会报错
(7)decr
给memcached中那些数字类型的进行相减操作,都必须是数字类型,否则报错。
(8)stats
查看memcached的状态,一些有用的参数如下:
- get_hists:get命令命中了多少次
- get_misses:get命令空了多少次
- curr_items:当前memcached中的键值对的个数
- total_connections:从memcached开启到现在总共的连接数
- curr-connections:当前memcached的连接数
- memcached:默认最大的连接数是1024
三、python操作memcached
(1)安装
pip install python-memcached
(2)建立链接
import memcache
cache = memcache.Client(['139.199.131.146'],debug=True)
(2)设置数据
# 设置一个键值对
cache.set('username','Tom',time=60)设置多个键值对
cache.set_multi({'age':20,'email':'111@qq.com'},time=120)
(3)获取数据
cache.get('email')
(4)删除数据
cache.delete('email')
(5)自增长(+1)
cache.incr('num')
(6)自减少
cache.decr('num')
(7)可以设置加多少或者减多少
cache.incr('num',delta=100)
cache.decr('num',delta=50