Django如何使用redis作为缓存


Posted in Python onMay 21, 2020

已有Django项目,在其中设置以redis为缓存。

1、 安装django-redis:

pip install django-redis

2、 在settings里面配置cache设置:

CACHES = {
  "default":{
    "BACKEND":"django_redis.cache.RedisCache",
    "LOCATION":"redis://127.0.0.1:6379/1",  # DB设为1
    "TIMEOUT":None,  # 永久缓存,默认300秒
    "OPTIONS":{
      "CLIENT_CLASS":"django_redis.client.DefaultClient",
      # "PASSWORD":"xxxxxx" # 可能需要密码
    }
  }
}

3、 设置好后可以在shell中测试一下:

(1) 在终端中启动shell:

python manage.py shell

(2) 在shell中输入,并查看结果,验证可读写Cache:

In [1]: from django.core.cache import cache

In [2]: cache.set('mykey','haha,I get it!')

Out[2]: True

In [3]: cache.get('mykey')

Out[3]: 'haha,I get it!'

(3) 如果不能正常启动shell,可能是ipython版本过低,升级ipython即可:

pip install ipython --upgrade

4、 也可以新建test.py文件来验证,注意要导入settings并执行settings.configure():

from django.conf import settings
settings.configure()
from django.core.cache import cache
cache.set('key1','good day!')
cache.set('key2','other day!')
print(cache.get('key1'))
print(cache.get('key2'))

能正常显示如下即可:

good day!

other day!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python数据结构之Array用法实例
Oct 09 Python
python操作mongodb根据_id查询数据的实现方法
May 20 Python
Python基于pygame实现图片代替鼠标移动效果
Nov 11 Python
Python中创建字典的几种方法总结(推荐)
Apr 27 Python
python中实现指定时间调用函数示例代码
Sep 08 Python
Python及Django框架生成二维码的方法分析
Jan 31 Python
python里dict变成list实例方法
Jun 26 Python
使用django的ORM框架按月统计近一年内的数据方法
Jul 18 Python
python爬虫之爬取百度音乐的实现方法
Aug 24 Python
Python面向对象之私有属性和私有方法应用案例分析
Dec 31 Python
Python argparse模块使用方法解析
Feb 20 Python
Python filter过滤器原理及实例应用
Aug 18 Python
如何打包Python Web项目实现免安装一键启动的方法
May 21 #Python
keras之权重初始化方式
May 21 #Python
Python3 ID3决策树判断申请贷款是否成功的实现代码
May 21 #Python
Python使用os.listdir和os.walk获取文件路径
May 21 #Python
keras 权重保存和权重载入方式
May 21 #Python
浅谈keras保存模型中的save()和save_weights()区别
May 21 #Python
Python通过文本和图片生成词云图
May 21 #Python
You might like
paypal即时到账php实现代码
2010/11/28 PHP
php中get_headers函数的作用及用法的详细介绍
2013/04/27 PHP
解析ajax事件的调用顺序
2013/06/17 PHP
使用php实现截取指定长度
2013/08/06 PHP
PHP数组的定义、初始化和数组元素的显示实现代码
2016/11/05 PHP
浅析PHP7 的垃圾回收机制
2019/09/06 PHP
基于jquery的自定义鼠标提示效果 jquery.toolTip
2010/11/14 Javascript
JavaScript词法作用域与调用对象深入理解
2012/11/29 Javascript
jquery的trigger和triggerHandler的区别示例介绍
2014/04/20 Javascript
Egret引擎开发指南之视觉编程
2014/09/03 Javascript
javascript删除数组重复元素的方法汇总
2015/06/24 Javascript
JavaScript编写一个贪吃蛇游戏
2017/03/09 Javascript
jquery动态添加以及遍历option并获取特定样式名称的option方法
2018/01/29 jQuery
JS 验证码功能的三种实现方式
2018/11/26 Javascript
JavaScript碎片—函数闭包(模拟面向对象)
2019/03/13 Javascript
JS实现灯泡开关特效
2020/03/30 Javascript
Vue中Table组件行内右键菜单实现方法(基于 vue + AntDesign)
2019/11/21 Javascript
Python实现SMTP发送邮件详细教程
2021/03/02 Python
Python实现将数据框数据写入mongodb及mysql数据库的方法
2018/04/02 Python
Flask之flask-script模块使用
2018/07/26 Python
python 获取微信好友列表的方法(微信web)
2019/02/21 Python
Django 表单模型选择框如何使用分组
2019/05/16 Python
python实现五子棋小程序
2019/06/18 Python
pygame实现俄罗斯方块游戏(对战篇1)
2019/10/29 Python
Python实现FLV视频拼接功能
2020/01/21 Python
使用sklearn的cross_val_score进行交叉验证实例
2020/02/28 Python
浅谈tensorflow模型保存为pb的各种姿势
2020/05/25 Python
HTML5 Canvas实现360度全景图的示例代码
2018/01/29 HTML / CSS
澳大利亚网上玩具商店:Mr Toys Toyworld
2018/03/25 全球购物
启动一个线程是用run()还是start()
2016/12/25 面试题
理想演讲稿范文
2014/05/21 职场文书
幼儿园师德师风学习材料
2014/05/29 职场文书
应届生面试求职信
2014/07/02 职场文书
邓小平理论心得体会
2014/09/09 职场文书
基层党员群众路线教育实践活动个人对照检查材料思想汇报
2014/10/05 职场文书
JavaScript分页组件使用方法详解
2021/07/26 Javascript