django中怎么使用redis

发布网友 发布时间:2024-10-23 17:17

我来回答

1个回答

热心网友 时间:2024-11-02 00:44

导读:今天首席CTO笔记来给各位分享关于django中怎么使用redis的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

1、如何django中用redis缓存服务器,求详细教程。2、django的redis怎么用缓存3、Django+Celery+Redis 使用4、如何在django中使用redis做缓存服务器如何django中用redis缓存服务器,求详细教程。

django-redis 中文文档

Andrey Antukh, niwi@niwi.be 4.7.0

翻译: RaPoSpectre

1. 介绍

django-redis 基于 BSD 许可, 是一个使 Django 支持 Redis cache/session 后端的全功能组件.

1.1 为何要用 django-redis ?

因为:

持续更新

本地化的 redis-py URL 符号连接字符串

可扩展客户端

可扩展解析器

可扩展序列器

默认客户端主/从支持

完善的测试

已在一些项目的生产环境中作为 cache 和 session 使用

支持永不超时设置

原生进入 redis 客户端/连接池支持

高可配置 ( 例如仿真缓存的异常行为 )

默认支持 unix 套接字

支持 Python 2.7, 3.4, 3.5 以及 3.6

1.2 可用的 django-redis 版本

稳定版本: 4.7.0

稳定版本: 3.8.4

1.3 我该使用哪个版本

版本号像 3.6, 3.7 … 等的是主要发行版本, 会包含向后不兼容的内容. 跟多信息请在升级前阅读升级日志.

版本号像 3.7.0, 3.7.1… 等的是小更新或者 bug 修复版本, 一般只会包含 bug 修复, 没有功能更新.

1.4 依赖

1.4.1 Django 版本支持

django-redis 3.8.x 支持 django 1.4, 1.5, 1.6, 1.7 (或许会有 1.8)

django-redis 4.4.x 支持 django 1.6, 1.7, 1.8, 1.9 和 1.10

1.4.2 Redis Server 支持

django-redis 3.x.y 支持 redis-server 2.6.x 或更高

django-redis 4.x.y 支持 redis-server 2.8

django的redis怎么用缓存

sudo apt-get install redis-server

然后为了能在Django中使用redis,还需要安装redis for Django的插件:

ip install django-redis

这是一个开源的项目,github地址是,感谢作者。

那么现在就是在Django的settings中配置了。

Django+Celery+Redis 使用

pip install django==2.1.4

pip install redis==3.2.0

pip install celery==4.4.2

pip install eventlet # celery 4.0+版本以后不支持在windows运行,还需额外安装eventlet库

settings.py配置

在同级目录下还需要添加celery.py文件

在settings.py 同级的 init .py 写入下面内容 确保项目启动时即加载Celery实例:

在模块中添加tasks.py

最后可在其他文件中调用此任务函数,以达到异步:

启动redis 和django 然后打开terminal 输入如下内容 启动worker:

更具体的介绍可以参考 ;utm_medium=socialutm_oi=902276942420668416

如何在django中使用redis做缓存服务器

实现缓存的方式,有多种,本地内存缓存,数据库缓存,文件系统缓存。这里介绍使用Redis数据库进行缓存。

环境

redis

django-redis

配置

settings.py

CACHES = { ? ?"default": { ? ? ? ?"BACKEND": "django_redis.cache.RedisCache", ? ? ? ?"LOCATION": "redis://127.0.0.1:6379/1", ? ? ? ?"OPTIONS": { ? ? ? ? ? ?"CLIENT_CLASS": "django_redis.client.DefaultClient", ? ? ? ? ? ?"PASSWORD": "mysecret"

? ? ? ?}

? ?}

}

python manage.py createcachetable1

缓存有站点缓存,和单个view缓存

站点缓存:?

settings.py

? ?MIDDLEWARE = [ ? ?# 站点缓存 , 注意必须在第一个位置

? ?'django.middleware.cache.UpdateCacheMiddleware',

? ?... ? ?# 站点缓存, 注意必须在最后一个位置

? ?'django.middleware.cache.FetchFromCacheMiddleware',

]

视图缓存:?

views.py

from django.shortcuts import renderfrom django.views.decorators.cache import cache_pagefrom cache.models import Foo# 在需要缓存的视图上添加装饰器, 参数是设置timeout 超时时间, 单位是秒, @cache_page(60)def index(request):

? ?bar = Foo.objects.all() ? ?return render(request, 'cache/index.html', {'bar': bar})

结语:以上就是首席CTO笔记为大家整理的关于django中怎么使用redis的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于django中怎么使用redis的相关内容别忘了在本站进行查找喔。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com