如何高效运用25Django的缓存API实现数据持久化?

2026-05-21 19:512阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计465个文字,预计阅读时间需要2分钟。

如何高效运用25Django的缓存API实现数据持久化?

plaintext

1.缓存设置

cache.set(key, value, timeout)

名称解释:key:自定义的缓存key,字符串类型value:Python对象timeout:缓存存储时间(秒),默认走CACHES中的配置

1存储缓存

cache.set(key, value, timeout)

如何高效运用25Django的缓存API实现数据持久化?

cache.set(key, value, timeout)

名词解释:
key:你自己要定义的缓存key,字符串类型
value:python对象
timeout:缓存存储时间(s),不配置此项,默认会走CACHES中的timeout值
返回值:None

cache.add(key,value)

存储缓存的另外一种方法:

cache.add(key,value) #注意:只在key不存在时生效,如果key存在就会给你返回一个False
返回值:True[存储成功] or

2批量存储缓存

cache.set_many(dict,timeout)

cache.set_many(dict,timeout) #批量存储缓存

dict:key和value的字典
timeout:存储的时间(s)

3获取缓存

cache.get(key)

名称解释:
返回值:为key的具体值,如果没有数据则返回None

#示例
D:\PycharmProjects\mysite7>python manage.py shell
>>> from django.core.cache import cache
>>> cache.set('num1','zhangsan',60)
>>> cache.get('num1')
'zhangsan'

cache.get_or_set(key, value, timeout)

cache.get_or_set(key, value, timeout) #如果未获取到数据,则执行set操作,返回值时value

4批量获取缓存

cache.get_many(key_list)

名词解释:
key_list: 包含key的数组
返回值:取到的key和value的字典

5删除缓存

cache.delete(key)

删除key的缓存数据,返回值是None
cache.delete(key)

6批量删除缓存

cache.delete_many(key_list)
批量删除缓存,返回值是None

7用法思路:

如果再setting.py里只配置了一个缓存,那么我们可以用下列方法直接引用:

#直接引用settings里的CACHES配置项中的default项
from django.core.cache import

如果setting里的CACHES配置项里有多个缓存配置,那么我们就需要使用键值对的方式引用配置项:

from django.core.cache import caches
cache1 = caches['default1']
cache2 = caches['defaults']



本文共计465个文字,预计阅读时间需要2分钟。

如何高效运用25Django的缓存API实现数据持久化?

plaintext

1.缓存设置

cache.set(key, value, timeout)

名称解释:key:自定义的缓存key,字符串类型value:Python对象timeout:缓存存储时间(秒),默认走CACHES中的配置

1存储缓存

cache.set(key, value, timeout)

如何高效运用25Django的缓存API实现数据持久化?

cache.set(key, value, timeout)

名词解释:
key:你自己要定义的缓存key,字符串类型
value:python对象
timeout:缓存存储时间(s),不配置此项,默认会走CACHES中的timeout值
返回值:None

cache.add(key,value)

存储缓存的另外一种方法:

cache.add(key,value) #注意:只在key不存在时生效,如果key存在就会给你返回一个False
返回值:True[存储成功] or

2批量存储缓存

cache.set_many(dict,timeout)

cache.set_many(dict,timeout) #批量存储缓存

dict:key和value的字典
timeout:存储的时间(s)

3获取缓存

cache.get(key)

名称解释:
返回值:为key的具体值,如果没有数据则返回None

#示例
D:\PycharmProjects\mysite7>python manage.py shell
>>> from django.core.cache import cache
>>> cache.set('num1','zhangsan',60)
>>> cache.get('num1')
'zhangsan'

cache.get_or_set(key, value, timeout)

cache.get_or_set(key, value, timeout) #如果未获取到数据,则执行set操作,返回值时value

4批量获取缓存

cache.get_many(key_list)

名词解释:
key_list: 包含key的数组
返回值:取到的key和value的字典

5删除缓存

cache.delete(key)

删除key的缓存数据,返回值是None
cache.delete(key)

6批量删除缓存

cache.delete_many(key_list)
批量删除缓存,返回值是None

7用法思路:

如果再setting.py里只配置了一个缓存,那么我们可以用下列方法直接引用:

#直接引用settings里的CACHES配置项中的default项
from django.core.cache import

如果setting里的CACHES配置项里有多个缓存配置,那么我们就需要使用键值对的方式引用配置项:

from django.core.cache import caches
cache1 = caches['default1']
cache2 = caches['defaults']