码迷,mamicode.com
首页 > 其他好文 > 详细

django-redis 使用规范

时间:2018-11-16 15:07:45      阅读:533      评论:0      收藏:0      [点我收藏+]

标签:测试   djang   最简   alias   constant   alt   ken   过期   mobile   

django-redis 基于 BSD 许可, 是一个使 Django 支持 Redis cache/session 后端的全功能组件.

1,安装 django-redis 最简单的方法就是用 pip :

pip install django-redis

 

2,作为 cache backend 使用配置:

为了使用 django-redis , 你应该将你的 django cache setting 改成这样:

1 CACHES = {
2     "default": {
3         "BACKEND": "django_redis.cache.RedisCache",
4         "LOCATION": "redis://127.0.0.1:6379/1",
5         "OPTIONS": {
6             "CLIENT_CLASS": "django_redis.client.DefaultClient",
7         }
8     }
9 }

 

3  作为 session backend 使用配置

 技术分享图片

Django 默认可以使用任何 cache backend 作为 session backend, 将 django-redis 作为 session 储存后端不用安装任何额外的 backend

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

 

4,使用 django-redis 进行测试

 

from django_redis import get_redis_connection

redies_conn = get_redis_connection(verify_codes)  #这里的名字是setting 里的配置的name
添加:
redis_conn.setex(key,timeout,value) #键 过期时间(s) 值
取值:
redis_conn.setex.get(‘key‘)
删除:
redies_conn.delete(‘key‘)

 

Django-redis管道的使用

 1 from django_redis import get_redis_connection
2 #创建redis连接对象 3 #说明:verify_codes表示settings文件中的redis配置的选择 4 redis_conn = get_redis_connection(verify_codes)
5 #管道的使用 6 pl = redis_conn.pipeline() 7 pl.setex("sms_%s" % mobile, constants.SMS_CODE_REDIS_EXPIRES, sms_code) 8 pl.setex(send_flag_%s % mobile, constants.SEND_SMS_CODE_INTERVAL, 1)
9 #传递指令, 写入redis 10 pl.execute()

 

Redis 管道技术:

  • Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。这意味着通常情况下一个请求会遵循以下步骤:
  • 客户端向服务端发送一个查询请求,并监听Socket返回,通常是以阻塞模式,等待服务端响应。
  • 服务端处理命令,并将结果返回给客户端。
  • Redis 管道技术可以在服务端未响应时,客户端可以继续向服务端发送请求,并最终一次性读取所有服务端的响应。
  • 管道技术最显著的优势是提高了 redis 服务的性能。

 

django-redis 使用规范

标签:测试   djang   最简   alias   constant   alt   ken   过期   mobile   

原文地址:https://www.cnblogs.com/lvye001/p/9969049.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!