Django中使用Redis缓存

目录

  • Redis数据库

    • Redis vs MySQL
    • Redis vs Memcache
    • Redis操作
    • Redis数据库
    • Python使用Redis

Redis数据库

Redis vs MySQL

  • redis: 内存数据库(读写块)、非关系型(操作数据方便)
  • MySQL:硬盘数据库(数据持久化)、关系型(操作数据间关系)
  • 大量访问临时数据,采用redis数据库更优

Redis vs Memcache

  • Redis

    • 操作字符串、列表、哈希、无序集合、有序集合
    • 支持数据持久化,有一部分数据存在硬盘中(数据丢失可以找回、可以将数据同步给mysql)
    • 高并发
  • Memecache
    • 操作字符串
    • 不支持数据持久化
    • 并发量小

Redis操作

  • 基础操作:

    • 启动服务:redis-server
    • 链接数据库:redis-cli
    • 链接指定数据库:redis-cli -h 127.0.0.1 -p 6379 -n 1 (-n表示要连接的库)
    • 切换数据库:select 1
  • 数据操作:
    • 字符串
    • 列表
    • 哈希
    • 无序集合
    • 有序集合(游戏排行榜)

Redis数据库

  • 命令行简单使用redis:

    • redis-cli -- 启动客户端
    • set key value -- 设置值
    • get key -- 取出值
  • 特点:
    • 可持久化
    • 单线程单进程并发

Python使用Redis

1.依赖:

pip install redis

2.直接使用:

import redis
r = redis.Redis(host='127.0.0.1', port=6379, db=1)

3.连接池使用:

import redis
pool = redis.ConnectionPool(host='127.0.0.1', port=6379, db=10, max_connections=100)
r = redis.Redis(connection_pool=pool)

4.缓存使用:额外安装django-redis:

# 安装django-redis
pip install django-redis

# settings.py
# 将缓存存储位置配置到redis中
ACHES = {
    "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}
        }
    }
}

# views.py
# 操作cache模块直接操作缓存
from django.core.cache import cache
# 存放token,可以直接设置过期时间
cache.set('token', 'header.payload.signature', 10)
# 取出token
token = cache.get('token')

原文地址:https://www.cnblogs.com/17vv/p/11979398.html

时间: 2024-10-08 17:51:20

Django中使用Redis缓存的相关文章

Django中使用Redis

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 # 这是通

linux中的redis缓存服务器

Linux中的Redis缓存服务器 一.Redis基础部分: 1.redis介绍与安装比mysql快10倍以上 *****************redis适用场合**************** 1.取最新N个数据的操作 2.排行榜应用,取TOP N 操作 3.需要精确设定过期时间的应用 4.计数器应用 5.Uniq操作,获取某段时间所有数据排重值 6.实时系统,反垃圾系统7.Pub/Sub构建实时消息系统 7.Pub/Sub构建实时消息系统8.构建队列系统 9.缓存 ============

Django之使用redis缓存session,历史浏览记录,首页数据实现性能优化

Redis缓存session 配置Django缓存数据到redis中 # diango的缓存配置 CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", # 用户的session信息,历史浏览记录存储在redis数据库9中 "LOCATION": "redis://127.0.0.1:6379/9", "OPTIONS

在django中使用redis

方式一 utils文件夹下,简历redis_pool.py import redis POOL = redis.ConnectionPool(host='127.0.0.1', port=6379,password='1234',max_connections=1000) views中使用 import redis from django.shortcuts import render,HttpResponse from utils.redis_pool import POOL def inde

Spring 中使用redis缓存方法记录

背景 在平时项目中,可能会有某个条件的查询,会多次进到db里面去查,这样就会重复的查询相同的数据,但是我们的数据又不是需要更改及显示的,这时候就可以用到 方法的缓存了.例如在我们调用微信小程序时,需要获取access_token,并且其有效时间为7200秒,过期后再次获取,我们就可以把获取access_token的方法作为 缓存.以下为我实现的过程记录. 1.重写 RedisSerializer 中的 serialize 和 deserialize 1 public class GenericF

在Django中使用redis:包括安装、配置、启动。

安装redis: 1.下载: wget http://download.redis.io/releases/redis-3.2.8.tar.gz step2:解压 tar -zxvf redis-3.2.8.tar.gz step3:复制,放到usr/local?录下 sudo mv ./redis-3.2.8 /usr/local/redis step4:进?redis?录 cd /usr/local/redis/ step5:生成 sudo make step6:测试,这段运?时间会较? s

Django中配置redis

setting.py import redis REDIS_DB = redis.Redis(host='127.0.0.1',port=6379,db=1) #db = 默认为1 还可以这样的配置 # redis 的配置文件 CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://127.0.0

Django 中使用redis

原文地址:https://www.cnblogs.com/Rivend/p/12048084.html

Django分析之使用redis缓存服务器

时间长没有更新了,这段时间一直忙着一个项目,今天就记录一个现在经常会用到的技术吧. redis相信大家都很熟悉了,和memcached一样是一个高性能的key-value数据库,至于什么是缓存服务器,度娘都有很明白的介绍了,我在这里就不一一介绍了. 那我们一般什么情况下才会使用缓存服务器呢?可不是什么情况都需要的哦,一般来说是在需要频繁对一个字段读取的时候才会需要将这个字段放入到缓存服务器上,而且由于key-value数据库一般只是放很简单的数据,所以在选择保存的对象的时候要注意选择好. 下面我