首页 > 数据库 >Django操作redis

Django操作redis

时间:2023-02-16 19:13:31浏览次数:47  
标签:127.0 0.1 cache redis Django 6379 操作 django

一、环境安装

基本环境:

Python环境:Python 3.8.16

Django环境:4.1

redis环境:参考搭建 https://www.cnblogs.com/yclh/p/14742336.html

并且已经添加了myApp的应用

 

安装redis的包:

pip install django-redis

 

二、配置文件

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

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},#连接池

            "SOCKET_CONNECT_TIMEOUT": 5,  # 连接redis超时时间,单位为秒

            "SOCKET_TIMEOUT": 5,  # redis读写操作超时时间,单位为秒

            # "PASSWORD": "123",

        }

    }

}

 

三、myApp里配置路径和编写view的方法

1、配置路径

 

 

 

2、编写view的方法

 

 

 

from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
#1 使用cache(推荐使用这种方法)
from django.core.cache import cache


def index(request):
    cache.set("oneName", "张三")
    #timeout是有效期 单位是秒
    cache.set("TwoName", "lisi", timeout=5)
    print(cache.get("oneName"))
    print(cache.get("TwoName"))
    return HttpResponse('设置成功')



#2 直接使用conn对象(不推荐,但是也可以用)
from django_redis import get_redis_connection

def my(request):
    redis_conn = get_redis_connection("default")
    redis_conn.set("id", "hello")
    print(redis_conn.get("id"))

    # 查看目前已创建的连接数量
    connection_pool = redis_conn.connection_pool
    print(connection_pool._created_connections)
    return HttpResponse('设置成功')

 

四、验证效果

注:结合控制台的输出,验证从redis里取数据

1、进入redis客户端

127.0.0.1:6379> keys *

(empty list or set)

没有主键信息

2、浏览器访问http://127.0.0.1:8000/redis/test

127.0.0.1:6379> keys *

1) ":1:TwoName"

2) ":1:oneName"

有两个key了,过5秒钟在次查看

127.0.0.1:6379> keys *

1) ":1:oneName"

TwoName过期就从redis里自动删除了

3、浏览器访问http://127.0.0.1:8000/redis/other

127.0.0.1:6379> keys *

1) "id"

2) ":1:oneName"

说明view里写的两种方式都可以操作redis

标签:127.0,0.1,cache,redis,Django,6379,操作,django
From: https://www.cnblogs.com/yclh/p/17127933.html

相关文章

  • Django操作mongo数据库二(MongoClient方式)
    一、基本环境1、开发环境:Python环境:Python3.8.16Django环境:4.12、需要安装的包pipinstallpymongopipinstallmongoengine二、开发参数配置1、先创建一个mongoA......
  • Django操作mongo数据库一(配置文件里写连接信息)
    一、基本环境1、开发环境:Python环境:Python3.8.16Django环境:4.12、需要安装的包pipinstallpymongopipinstallmongoengine  二、开发参数配置1、先创建一个......
  • Django项目创建(一)
    一、创建django项目1、pycharm工具创建这种方式django会是默认最新版本的 2、命令行创建(1)创建新的开发环境condacreate--namepython3.8testpython=3.8(2)激活开......
  • Django项目创建应用(二)
    四、创建应用一个项目里可以创建多个应用,每个应用进行一种业务处理(1)激活当前项目的环境D:\pythonProject2023\djangoProject>activatepython3.8forDjango (python3.......
  • docker-compose搭建redis-Cluster集群
    环境选择三台机器创建相同目录级:/database/redis/在目录里创建文件:viredis-cluster.tmpl查看防火墙--如果防火墙的状态是打开的记得开端口文件配置redis-clust......
  • 07 - Go Ceph S3操作
    ceph/ceph.go//PackagecephGo对cephs3文件增删改packagecephimport( "fmt" "os" "gopkg.in/amz.v1/aws" "gopkg.in/amz.v1/s3")//MgrCephS3cephs3ty......
  • linux系统安装jdk1.8、mysql5.7、redis(压缩包版本教程)
    linux系统安装jdk1.8、mysql5.7、redis(压缩包版本教程)在内网环境中的linux系统上安装环境,十分的麻烦(没有网络)一、安装jdk1.81.在use/local下创建相关文件夹:1.mkdirja......
  • redis_字节课
                                                  ......
  • 对服务器进行心跳检测 python django
    (由于春节期间连不上服务器,但又不知道是不是服务器关机了,因此写一个心跳检测功能遇到问题时可以排查部分原因)具体来说分为客户端和服务端,客户端为校园服务器,服务端为我们自......
  • 代码随想录算法训练营day22 | leetcode 235. 二叉搜索树的最近公共祖先 ● 701.二叉
    LeetCode235.二叉搜索树的最近公共祖先分析1.0 二叉搜索树根节点元素值大小介于子树之间,所以只要找到第一个介于他俩之间的节点就行classSolution{publicTre......