1.首先需要在settings.py
中配置好缓存
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211',
}
}
2.如果想要使用多台机器,那么可以在LOCATION
指定多个连接,例如:
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': [
'172.19.26.240:11211',
'172.19.26.242:11211',
]
}
}
3配置好memcached
的缓存后,以后在代码中就可以使用以下代码来操作memcached
了:
from django.core.cache import cache
例如:
from django.core.cache import cache
def index(request):
cache.set('username','xxx',60)
print(cache.get('username'))
return HttpResponse('操作成功')
需要注意的是,django
在存储数据到memcached
中的时候,不会将指定的key
存储进去,而是会对key
进行一些处理。比如会加一个前缀,会加一个版本号。格式为: newkey = 前缀:版本号:key
查看源代码得知django处理方式:
更改默认方式:
CACHES = {
'default':{
'BACKEND':'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION':'127.0.0.1:11211',
'KEY_FUNCTION':lambda key,prefix_key,version:"django:%s"%key
}
}
telnet 127.0.0.1 11211 进入memcache
查看所有key :stats cachedump [items_id] 0
当然你也可以自己的方式
Memcached教程:http://www.runoob.com/memcached/memcached-tutorial.html