Django操作redis
一、环境安装
基本环境:
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
Django操作redis的更多相关文章
- Django day 34 过滤课程,登录,redis,python操作redis
一:过滤课程, 二:登录 三:redis, 四:python操作redis
- python——操作Redis
在使用django的websocket的时候,发现web请求和其他当前的django进程的内存是不共享的,猜测django的机制可能是每来一个web请求,就开启一个进程去与web进行交互,一次来达到利 ...
- 数据库之redis篇(3)—— Python操作redis
虽然前面两篇已经说了redis的一些配置安装什么的,篇幅有点长,可能看完了也不知道怎么操作,这里再浓缩一下: 什么是redis redis完全开源免费的,遵守BSD协议,是一个高性能的非关系型key- ...
- django - 总结 - redis缓存
八.redis 补充- 操作 - 增删改查 对字典,重新设计结构,增删改查. hmset keys hget scan_iter hgetall import redis import j ...
- redis的使用与 django的redis的使用
1. 使用redis数据库分为两种: 第一种是在python语言中直接使用的方式, 第二种就是在django中使用django_redis模块来数用 第一种直接在python语言中使用redis im ...
- Redis常用操作大全和Python操作Redis
简单使用 utils.py import redis POOL=redis.ConnectionPool(host='127.0.0.1',port=6379) view.py 第一种方式 (通用方式 ...
- django做redis缓存
django中应用redis:pip3 install django-redis - 配置 CACHES = { "default": { "BACKEND": ...
- edis 以及 Python操作Redis
Redis 以及 Python操作Redis Redis Redis是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis有以下特点: -- Redis支持数据的持 ...
- Django中redis的使用方法(包括安装、配置、启动)
一.安装redis: 1.下载: wget http://download.redis.io/releases/redis-3.2.8.tar.gz 2.解压 tar -zxvf redis-3.2. ...
- Redis - Python操作Redis
目录 Python操作Redis 一. Redis安装和基本使用 二. Python操作Redis API使用 1.操作模式 2.连接池 3.Django配置Redis 4.操作 Python操作Re ...
随机推荐
- IDEA新手使用教程【详解】
IDEA是一款功能强悍.非常好用的Java开发工具,近几年编程开发人员对IDEA情有独钟. Intellij Idea使用技巧总结 1.如何设置通过鼠标滑轮改变编辑器字体大小 2.如何设置自动导包功能 ...
- 编写FailServlet和SuccessServlet类
@WebServlet("/successServlet") public class SuccessServlet extends HttpServlet { protected ...
- linux 基础(10)进程管理
使用 ps 观察程序 ps -l ps程序可以查询当前在运行的进程信息.ps -l可以列出详细的信息,默认仅列出当前 bash 相关的进程. sudo -i ps -l F S UID PID PPI ...
- 安装、小demo、基本的步骤
FastAPI 有两个依赖支持: Starlette负责网络 Pydantic负责数据 安装: 安装命令 pip install fastapi FastAPI 还需要ASGI服务器,生产环境下可 ...
- php使用PDO获取结果集的方法
php使用PDO获取结果集的方法 转载:https://www.jb51.net/article/105797.htm 更新时间:2017年02月16日 11:11:42 作者:水晶依恋 ...
- 钓鱼攻击之:WEB 钓鱼
郑重声明: 本笔记编写目的只用于安全知识提升,并与更多人共享安全知识,切勿使用笔记中的技术进行违法活动,利用笔记中的技术造成的后果与作者本人无关.倡导维护网络安全人人有责,共同维护网络文明和谐. 钓鱼 ...
- CF873F - Forbidden Indices
题意:对于一个字符串 \(S\),有一些位置是被 \(\text{Ban}\) 掉的. 对于这个字符串的所有子串,它的分数是(长度 \(\times\) 在没有被 \(\text{Ban}\) 掉的位 ...
- ElasticSearch 实现分词全文检索 - 概述
需求 做一个类似百度的全文搜索功能 所用的技术如下: ElasticSearch Kibana 管理界面 IK Analysis 分词器 SpringBoot ElasticSearch 简介 ES ...
- SQL常用命令使用方法
(1) 数据记录筛选: sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]" sql="select * f ...
- 同一ip地址不同的主机冲突解决
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HA ...