关于cookie session机制的实现

来源:6-6 session和cookie自动登录机制

烈焰卡卡

2020-06-28

老师您好,在课程中用cookie session来实现的登录,是将服务端session过期时间配置成2周左右过期。我想到有两种情况,不知道一个大致的实现原理是怎样的,希望和您探讨一下思路

1. 有一些网站,基本登录之后,只要不退出,很久都不需要重新登录,我个人理解为session永不过期,那在这种情况下,服务器数据库如何维护过多的session,因为如果不登出也不过期,session的数量只会越来越多?

2. 还有一些网站,是一段时间内无操作就需要重新登录,那在这种情况下,session过期时间是否就不是一个固定的值,而是在每个请求时更新session的过期时间?每个请求都更新过期时间是否会对数据库造成比较大的压力?

写回答

1回答

bobby

2020-06-28

不错, 你的问题是经过思考的: 1. 一般网站为了解决多点同时登陆的问题一般重新登录以后会将之前的session删除掉,所以理论上一个用户只有一个session活跃,所以如果时长过大,session在库中会比较多,。但是不会无限不会超过用户数, 怎么会很多呢?而且对于你来说 用户越多 session会更加重要,无论花多大的代价都是值得的。 2. 一般情况下不会动态过期时间,一般是固定的,但是是如何做到经常操作就不会退出呢,一般session会有刷新机制。这个时候前端可以判断用户的操作情况,如果操作频繁等到快到过期时间之前重新刷新一下过期时间就行了


0
3
烈焰卡卡
回复
bobby
明白了,谢谢老师!
2020-07-03
共3条回复

Python3.6+django+xadmin,打造在线教育平台

【毕设】Python 2.7到3.6 完美适配,Django升级2.0

3677 学习 · 4038 问题

查看课程