Django中使用Redis

本文详细介绍在Django项目中如何使用Redis,包括通过自定义连接池和单例模式实现的方案,以及利用django-redis模块进行配置和操作的具体步骤。文章提供了设置和获取Redis数据的示例代码,并展示了如何在视图函数中使用缓存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

django中使用redis

方案一:(在其它web框架也可以使用)——自定义(用连接池和单例)

utils文件夹下,建立redis_pool.py

import redis
POOL=redis.ConnectionPool('127.0.0.1',6379,max_connections=1000)

视图函数中使用:

from django.shortcuts import render, HttpResponse
import redis
from app01.redis_pool import POOL


# 这是通用的方法
# 第一种方案:
# 1.写一个模块,写一个pool,导入
def setname(request):
    conn = redis.Redis(connection_pool=POOL)
    conn.set('name', '曹蕊是好人')
    return HttpResponse('设置成功')


def getname(request):
    conn = redis.Redis(connection_pool=POOL)
    name = conn.get('name').decode('utf-8')
    return HttpResponse(name)
第一种方法代码

 

方案二:

安装django-redis模块

pip3 install django-redis

setting里配置:

# redis配置
CACHES = {
    "default": {
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379",
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
            "CONNECTION_POOL_KWARGS": {"max_connections": 100}
            # "PASSWORD": "123",
        }
    }
}
这样就可以把缓存放在redis里面了

视图函数:


from django_redis import get_redis_connection

def
setname(request): conn = get_redis_connection() conn.set('name', '测试') return HttpResponse('设置成功') def getname(request): conn = get_redis_connection() name = conn.get('name').decode('utf-8') return HttpResponse(name) from django.views.decorators.cache import cache_page @cache_page(5) def test(request): import time ctime = time.time() return HttpResponse(str(ctime))

 

转载于:https://www.cnblogs.com/cao123/p/10182741.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值