1 下载 memcached-win64-1.4.4-14.zip 根据系统不同文件不同 下载地址
2 安装服务
# 解压到任意目录
# 1 c:\memcached\memcached.exe -d install # 安装服务
# 2 c:\memcached\memcached.exe -p 11211 -d start # 指定端口并开始服务
# 3 c:\memcached\memcached.exe -d stop # 停止服务
#
# 调整配置
# "c:\memcached\memcached.exe" -d runservice -m 512 指定最大缓存为512M
# c:\memcached\memcached.exe -d uninstall 卸载服务
#
# 如果要修改 memcached 的配置项, 可以在命令行中执行 regedit.exe 命令打开
# 找到 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached"
# 修改项目 ImagePath 如下
# "XXX\memcached.exe" -p 11211 -d runservice 指定端口
# "XXX\memcached.exe" -p 11211 -d runservice -l 127.0.0.1 指定端口和IP
3 安装python 对应操作模块
pip install python-memcached
4 建议操作和对应API
import memcache
# 基本操作
# debug=True表示运行出现错误时,可以显示错误信息,
# 正式环境可以不加或者为False
# 单服务器访问
# mc = memcache.Client(['120.24.147.136:12000'], debug=True)
# 多服务器访问
# mc = memcache.Client(['120.24.147.136:12000',
# '120.24.147.136:12000'], debug=True)
mc = memcache.Client(['120.24.147.136:12000'], debug=True)
mc.set("wzq29931927","654321")
value = mc.get("wzq29931927")
print(value)
# 对sql查询做缓存
count = mc.get(key)
if not count:
c.execute(sql)
count = c.fetchone()[0]
mc.set(key,count,60*5) # 存5分钟
# 主要API
# 无条件键值对的设置,其中的time用于设置超时,单位是秒,
# 而min_compress_len则用于设置zlib压缩(注:zlib是提供数据压缩用的函式库)
# set(key, val ,time=0 ,min_compress_len=0)
#
# 设置多个键值对,key_prefix是key的前缀,完整的键名是key_prefix+key,
# 使用方法如下
# >>> mc.set_multi({'k1' : 1, 'k2' : 2},
# >>> key_prefix='pfx_') == []
# >>> mc.get_multi(['k1', 'k2', 'nonexist'],
# >>> key_prefix='pfx_') == {'k1' : 1, 'k2' : 2}
# set_multi(mapping,time=0,key_prefix='',min_compress_len=0)
#
# 添加一个键值对,内部调用_set()方法
# add(key,val,time=0,min_compress_len=0)
#
# 替换value,内部调用_set()方法
# replace(key,val,time=0,min_compress_len=0)
#
# 根据key去获取value,出错返回None
# get(key)
#
# 获取多个key的值,返回的是字典。keys为key的列表
# get_multi(keys,key_prefix='')
#
# 删除某个key。time的单位为秒,用于确保在特定时间内的set和update操作会失败。
# 如果返回非0则代表成功
# delete(key,time=0)
#
# 自增变量加上delta,默认加1,使用如下
# >>> mc.set("counter", "20")
# >>> mc.incr("counter")
# incr(key,delta=1)
#
# 自减变量减去delta,默认减1
# @decr(key,delta=1)
5 查看memcache中所有的键值对
# 查看当前所有的键值对
# cmd 中输入
# telnet 127.0.0.1 12000
# 提示不是内部或外部命令,也不是可运行的程序 需要开启对应服务
# 进入 控制面板-程序和功能 勾选 telnet客户端
#
# 列出所有keys
# telnet 中输入 stats items //
# 查看对应的值
# stats cachedump 1 0 //