redis存储session需要多少空间

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis存储session需要多少空间相关的知识,希望对你有一定的参考价值。

参考技术A 取决于你机器的内存有多大。
redis的最大占用内存数取决于你在配置文件中给参数maxmemory分配了多大的空间。因此取决于你机器的内存有多大。
Redis是一个高性能的key-value数据库。redis的出现,很大程度补偿了memcached这类keyvalue存储的不足。

Django session存储到redis数据库

把session存储到redis数据库,需要在setting中配置

django-redis 中文文档

http://django-redis-chs.readthedocs.io/zh_CN/latest/#cache-backend

技术分享图片

在使用django1.6+的时候,默认会吧session存放在数据库django_session表里。
如果要把session放在内存中,就应该在settings.py 中配置
SESSION_ENGINE = "django.contrib.sessions.backends.cache"

使用的时候:

新增:request.session["userName"] = "Tom"
查询:name = request.session["userName"]
删除:del request.session["userName"]


好,那更复杂一点的数据该如何存储呢:比如一个对象Student。
按照其他语言的习惯,比如java和C#,按理说应该是:

stu = Student(name="Tom",age = 12)
新增:request.session["user"] = stu
查询:stu = request.session["user"]
删除:del request.session["user"]

 

存放对象的时候,如果session是存放在内存中,那么是没有问题的。但是一旦存放在数据库中就不行了。
为何?
因为存放在数据库中的东西,是需要能够进行json序列化的。
Student是不能被序列化json的。需要把Student转换为字典,没错,是字典
{“name”:“Tom”,“age”:12}
这样才能存放在数据库session中。

 

 

原文地址: https://blog.csdn.net/shilei123456789666/article/details/79116271

以上是关于redis存储session需要多少空间的主要内容,如果未能解决你的问题,请参考以下文章

flask 第三方组件

tomcatsessionId学习(未完待续)

使用Redis存储session

从session原理出发解决微信小程序的登陆问题

redis存储session配制方法

redis02_session存在哪,redis解决session的存储问题_session的过期时间默认是半个小时