Django -Redis 缓存

1.首先确认使用所需的配置环境:

  • 确认安装Redis数据库
  • 确认运行环境安装Django-redis模块

2.配置缓存设置

  • 项目setting文件,添加缓存设置
  CACHES = {
       "default": {
            "BACKEND": "django_redis.cache.RedisCache",
            "LOCATION": "redis://127.0.0.1:6379/1",
            "OPTIONS": {
                  "CLIENT_CLASS": "django_redis.client.DefaultClient",
             }
        }
  }
  • 创建缓存文件cache_model.py,创建缓存函数:
  #此处的 flag 定义默认为 false 是为了后面更新缓存使用
  def  find_all_person(flag=False) :
      #缓存中获取数据
      print('缓存中获取数据\n')
      plist=cache.get("plist")

      #通过参数  flag 判断数据库更新与否,判断缓存是否更新
      if plist is None or flag:
          # 从数据库中查询数据
          print('数据库查询数据')
          plist=person_manager.find_all()

          #同步到缓存
          print('同步到缓存中")
          cache.set("plist",plist)
      return plist
  • views视图添加缓存模块:
  from . import cache_model  
    
    #查询数据通过缓存中拿取,不再直接向数据库取
    plist=cache_model.find_all_person()

    #每当数据更让时,告诉缓存函数,更新缓存:        
    #更新缓存数据调用缓存函数,传递参数 flag 为 true
    cache_model.find_all_person(True)

你可能感兴趣的:(Django -Redis 缓存)