django框架用户权限中的session缓存到redis中的方法

yipeiwu_com6年前Python基础

django框架默认将session保存到数据库中,在高并发访问无疑会影响服务器性能,因此最好将session保存到redis中避免直接从数据库中读取session数据

settings.py中配置如下:

#配置redis
CACHES = {
 'default': {
  'BACKEND': 'redis_cache.RedisCache',
  'LOCATION': '127.0.0.1:6379',
  'OPTIONS': {
   'DB': 0,
   'PASSWORD': 'abxdcfgda',
   'PARSER_CLASS': 'redis.connection.HiredisParser',
   # 'PICKLE_VERSION': 2,
   #'CONNECTION_POOL_CLASS': 'redis.ConnectionPool',
   'SOCKET_TIMEOUT': 10,
   #'CONNECTION_POOL_CLASS_KWARGS': {
    # 'max_connections': 2,
   # }
  },
 },
}
SESSION_COOKIE_AGE=30 * 60 #设置session过期时间为30分钟
'''配置session引擎SESSION_ENGINE为redis,配置此处session会存储在redis中,不会再去操作数据库了'''
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'

在登录函数中可以设置session有效期:request.session.set_expiry(30 * 60)

以上这篇django框架用户权限中的session缓存到redis中的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中self原理实例分析

本文实例讲述了python中self原理。分享给大家供大家参考。具体分析如下: 类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不...

Python程序设计入门(3)数组的使用

1、Python的数组可分为三种类型: (1) list 普通的链表,初始化后可以通过特定方法动态增加元素。定义方式:arr = [元素] (2) Tuple 固定的数组,一旦定义后,其...

Python实现使用dir获取类的方法列表

使用Python的内置方法dir,可以范围一个模块中定义的名字的列表。 官方解释是: Docstring: dir([object]) -> list of strings...

Python面向对象程序设计类的多态用法详解

本文实例讲述了Python面向对象程序设计类的多态用法。分享给大家供大家参考,具体如下: 多态 1、多态使用 一种事物的多种体现形式,举例:动物有很多种 注意: 继承是多态的前提 函数重...

python 两个数据库postgresql对比

这篇文章主要介绍了python 两个数据库postgresql对比,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 比较两个postgr...