本文和大家分享的主要是Memcached中常用的一些存取命令相关用法,一起来看看吧,希望对大家学习Memcached有所帮互助。
存储命令
set:不管key存在与否,强制进行set操作;
add:必须在memcached中不存在相应key才能作用;
replace:要求memcached中必须存在相应key才能作用;
append:将数据追加到key对应value值的末尾。(不允许超过限制,用于管理list)
cas(check and set):另一个存储数据的操作,当你最后一次读取该数据后,没有其它人修改该数据时,才可以写成功。用于解决更新数据时的竞争。
获取命令:
get:获取一个key的或多个keys的值;
gets:带CAS的get命令,会返回带CAS标识(唯一的64位数字)的value。
delete:删除存在的项
incr/decr:自增或自减。只接受正整数。如果key不存在,incr/decr失败。
flush_all:清除memcached中所有项,主要采取将所有数据设置为过期的方式实现,可指定过期时间。
Python Client: python-memcached vs pylibmc(对比介绍常用的Client客户端)
操作演示
python-memcached:pip install python-memcached //直接安python-memcached
Pylibmc:
sudo apt-get install python-dev //先安装python-dev
Sudo apt-get install libmemcached-dev //再安装libmemcached-dev
pip install pylibmc //安装客户端成功
启动memcached服务:python-memcached的操作演示
如果不设置参数,默认在所有的IP地址上都启动,默认端口11211
如图启动好后就可以操作这个缓存了
先进入代码库,然后激活虚拟缓存,激活后执行
引入python-memcached库,建立与服务器端的连接,端口号11211,建立好后可以与缓存服务器沟通,设置缓存,成功后会返回一个True
校验是否把值写进去
自增,类型int 、string都行
自减
pylibmc的操作演示:
先引入pylibmc客户端库,同样与服务器端建立连接
自增
自减
删除
另一种方法赋值,删除等
详细的设置命令: