具有自动粒度失效的django缓存后端

django-clever-cache的Python项目详细描述


Django缓存后端具有自动粒度失效。

需要

  • django>;=1.8
  • redis=3.0
  • Django Redis

安装和设置

$ pip install django-clever-cache

在settings.py中:将clever_cache添加到已安装的应用,并设置 clever_cache.backend.RedisCache作为缓存后端。

CACHES={"default":{"BACKEND":'clever_cache.backend.RedisCache',"LOCATION":"redis://127.0.0.1:6379/1","OPTIONS":{'DB':1,}}}

用法

使用standart函数在缓存中保存值 django.core.cache.cache.set带可选参数depends_oncache.set(key, value, depends_on=[<dependencies_list>])

依赖关系可以是:

模型类

如果将模型类设置为依赖项(cache.set(key, value, depends_on=[SomeModel])),并更改任何 somemodel的实例,调用bulk_createupdatedelete到 模型的queryset,key将失效。

模型实例

如果将模型实例设置为依赖项 (cache.set(key, value, depends_on=[some_instance])),并更改此 实例(包括更改M2M字段),密钥将失效。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
并行处理java。util。同时发生的叉子在游泳池里。常见的并行性准则,用于选择正确的并行度大小   java如何将空白字符追加到指定长度?   安卓应用程序中出现错误,SSLHandshakeException,找不到证书路径的信任锚点   java如何使用JUnit Mockito验证检查方法是否未被调用   java如何使用不同的@RequestMapping解析多个控制器中的静态页面   Selenium中的javascript需要验证搜索结果   访问数据库SQLiteopenHelper方法时java应用程序崩溃(nullpointerexception)   在二叉树中验证最小堆时出现java空指针异常   Java 7的SSL连接失败   java用RestEasyWebTarget替换ProxyFactory不起作用   在Java应用程序中单击“否”按钮后,数组程序冻结(无响应)   数组中的前缀Java初学者前进和   Java HTML解析器,包括脚本标记和LineNumberReader   在java中为长类型数字加前导零   正则表达式无法映射正则表达式java。lang.IllegalArgumentException:模式段中捕获组的数量