iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >django redis怎么使用
  • 222
分享到

django redis怎么使用

2023-07-06 04:07:18 222人浏览 泡泡鱼
摘要

这篇“Django redis怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“djanGo Red

这篇“Django redis怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“djanGo Redis怎么使用”文章吧。

1.说明

redis作为一个缓存数据库,在各方面都有很大作用,python支持操作redis,如果你使用Django,有一个专为Django搭配的redis库,即django-redis

2.安装

pip install django-redis

3.配置

3.1 配置redis

打开Django的配置文件,比如说setting.py,里面设置CACHES项

CACHES = {    "default": {        "BACKEND": "django_redis.cache.RedisCache",        "LOCATioN": "redis://127.0.0.1:6379/1",        "OPTIONS": {            "CLIENT_CLASS": "django_redis.client.DefaultClient",        }    }}

一个CACHES里可以配置多个redis连接信息,每一个都有自己的别名(alias),上面的“default”就是别名,到时候可以通过不同别名连接不同redis数据库

LOCATION是连接的信息,包括ip端口用户密码等,如果不需要用户密码则可以省略不写,django-redis支持三种连接协议,如下

协议说明举例
redis://普通的tcp套接字连接redis://[[username]:[passWord]]@localhost:6379/0
redissSSL方式的TCP套接字连接rediss://[[username]:[password]]@localhost:6379/0
rediss://Unix域套接字连接unix://[[username]:[password]]@/path/to/Socket.sock?db=0

3.2 使用redis存储session

Django默认的Session是存储在sql数据库里的,但我们都知道普通的数据会被数据存储在硬盘上,速度没有那么快,如果想改成存储在redis里,只需要在配置文件里配置一下就行

SESSION_ENGINE = "django.contrib.sessions.backends.cache"SESSION_CACHE_ALIAS = "default"

3.3 redis连接超时时间设置

连接超时的秒数可以在配置项里指定,SOCKET_CONNECT_TIMEOUT表示连接redis的超时时间,SOCKET_TIMEOUT表示使用redis进行读写操作的超时时间

CACHES = {    "default": {        # ...        "OPTIONS": {            "SOCKET_CONNECT_TIMEOUT": 5,  # 连接redis超时时间,单位为秒            "SOCKET_TIMEOUT": 5,  # redis读写操作超时时间,单位为秒        }    }}

4.使用redis

4.1 使用默认redis

如果你想使用默认的redis,也就是在配置文件里设置的别名为“default”的redis,可以引用django.core.cache里的cache

from django.core.cache import cachecache.set("name", "冰冷的希望", timeout=None)print(cache.get("name"))

4.2 使用指定redis(原生redis)

当你在配置文件里写了多个redis连接,可以通过别名指定要使用哪个redis

from django_redis import get_redis_connectionredis_conn = get_redis_connection("chain_info")redis_conn.set("name", "icy_hope")print(redis_conn.get("name"))

要注意,通过get_redis_connection()获取得到的客户端是原生Redis客户端,虽然基本上支持所有的原生redis命令,但它返回的数据是byte类型,你需要自己decode

5.连接池

使用连接池的好处是不用管理连接对象,它会自动创建一些连接对象并且尽可能重复使用,所以相当来说性能会好一点

5.1 配置连接池

要使用连接池,首先要在Django的配置文件里写上连接池的最大连接数

CACHES = {    "default": {        "BACKEND": "django_redis.cache.RedisCache",        ...        "OPTIONS": {            "CONNECTION_POOL_KWARGS": {"max_connections": 100}        }    }}

5.2 使用连接池

我们可以通过连接别名确定要使用哪个redis,然后正常执行命令就行,我们不用在乎它创建了哪些连接实例,但你可以通过connection_pool的_created_connections属性查看当前创建了多少个连接实例

from django_redis import get_redis_connectionredis_conn = get_redis_connection("default")redis_conn.set("name", "冰冷的希望")print(redis_conn.get("name"))# 查看目前已创建的连接数量connection_pool = redis_conn.connection_poolprint(connection_pool._created_connections)

5.3 自定义连接池

Django-redis默认的连接的类是DefaultClient,如果你有更高的定制需求,可以新建一个自己的类,继承ConnectionPool

from redis.connection import ConnectionPoolclass MyPool(ConnectionPool):    pass

有了这个类之后还需要在Django的配置文件里指定它

"OPTIONS": {    "CONNECTION_POOL_CLASS": "XXX.XXX.MyPool",}

以上就是关于“django redis怎么使用”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网精选频道。

--结束END--

本文标题: django redis怎么使用

本文链接: https://www.lsjlt.com/news/357697.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • django redis怎么使用
    这篇“django redis怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“django red...
    99+
    2023-07-06
  • celery+django+redis使
    版本: celery==3.1.25 django==1.8.6 redis==2.10.6 安装: 进入虚拟环境(虚拟环境创建不同,进入方式不同) pip install celery==3.1.25(以celery安装为例,其他...
    99+
    2023-01-30
    celery django redis
  • django redis的使用方法详解
    目录1.说明2.安装3.配置3.1 配置Redis3.2 使用redis存储session3.3 redis连接超时时间设置4.使用redis4.1 使用默认redis4.2 使用指定redis(原生redis)5.连接...
    99+
    2023-04-14
    django redis使用 django redis
  • django restframework使用redis实现token认证
    目录一、前言二、详解1. 前期准备2. 配置redis3. 将token写入redis3.1 原来的登录代码3.2 重写后的登录代码3.3 登录后redis存储的用户记录4. 重写认...
    99+
    2024-04-02
  • Redis怎么使用
    这篇文章给大家分享的是有关Redis怎么使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、Redis简介 什么是Redis?全称:REmote DIctionary Serv...
    99+
    2024-04-02
  • Django使用redis配置缓存的方法
    目录前言django应用redis缓存1.settings配置2.全站缓存3.视图函数缓存4.低级缓存5.session缓存对于非经常更新的服务器数据,若每次都从硬盘读取一次,会浪费...
    99+
    2024-04-02
  • django中DoesNotExist怎么使用
    在Django中,`DoesNotExist`是一个异常类,用于处理查询结果为空的情况。我们通常会在模型的查询方法中使用它。以下是使...
    99+
    2023-08-08
    django
  • django中include怎么使用
    这篇文章将为大家详细讲解有关django中include怎么使用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。本文教程操作环境:windows7系统、django2.1,DELL G3电脑。1.使用说明i...
    99+
    2023-06-14
  • Django怎么配置使用
    本篇内容主要讲解“Django怎么配置使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Django怎么配置使用”吧! 1. 准备工作   &nb...
    99+
    2024-04-02
  • django中怎么使用ModleForm
    这篇文章主要讲解了“django中怎么使用ModleForm”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“django中怎么使用ModleForm”吧!django项目基本信息models....
    99+
    2023-07-04
  • django中websocket怎么使用
    本文小编为大家详细介绍“django中websocket怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“django中websocket怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。websock...
    99+
    2023-06-28
  • django中ObjectDoesNotExist怎么使用
    在Django中,`ObjectDoesNotExist`是一个异常类,它用于表示一个对象不存在的情况。你可以在访问一个对象时使用它...
    99+
    2023-08-08
    django
  • Redis String怎么使用
    这篇“Redis String怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Red...
    99+
    2024-04-02
  • 怎么配置使用redis
    本篇内容主要讲解“怎么配置使用redis”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么配置使用redis”吧!Spring-data-redis为spring-data模块中对redis的支...
    99+
    2023-06-04
  • Java中怎么使用Redis
    这篇文章主要讲解了“Java中怎么使用Redis”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java中怎么使用Redis”吧!开启远程连接Redis默认是不支持远程连接的,这里需要手动开启...
    99+
    2023-06-21
  • springboot中redis怎么使用
    在Spring Boot中使用Redis,可以使用以下步骤:1. 添加依赖:在`pom.xml`文件中添加Redis的依赖:```x...
    99+
    2023-09-04
    springboot redis
  • Redis之Lettuce怎么使用
    本篇内容主要讲解“Redis之Lettuce怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Redis之Lettuce怎么使用”吧!一、摘要Lettuce 是 Redis 的一款高级 Ja...
    99+
    2023-07-04
  • ThinkPHP5中怎么使用redis
    本文小编为大家详细介绍“ThinkPHP5中怎么使用redis”,内容详细,步骤清晰,细节处理妥当,希望这篇“ThinkPHP5中怎么使用redis”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。前提:因为本文主要...
    99+
    2023-07-05
  • 怎么使用python django做网页
    要使用Python Django来创建网页,您需要遵循以下步骤:1. 安装Python和Django:首先,您需要安装Python和...
    99+
    2023-09-04
    python django
  • Django使用问题怎么解决
    本篇内容介绍了“Django使用问题怎么解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Django R...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作