在Django中存储会话的最佳(最有效,最可靠,最安全,最快)的方法是什么

时间:2014-01-12 16:02:28

标签: python django session memcached session-cookies

我正在开发一个Django项目,通过API在外部进行身份验证。所以在内部,我只需要记住用户是否在会话变量中登录(+帐户信息)。 Django文档提供了一些存储会话数据的选项:

  1. 使用数据库支持的会话
  2. 使用缓存会话
  3. 使用直写式缓存(缓存和数据库)
  4. 使用基于文件的会话
  5. 使用基于Cookie的会话
  6. 我不确定使用哪一个,你最喜欢的是什么?为什么?

1 个答案:

答案 0 :(得分:2)

https://docs.djangoproject.com/en/dev/topics/http/sessions/

我的意见:

我会推荐直写缓存。它结合了数据库支持的会话和缓存的会话。数据库支持的会话速度较慢,缓存的会话缺乏持久性。直写高速缓存将它们组合在一起以使会话持久且更快。

基于Cookie的会话速度很快,而数据很小且不安全。但帐户信息不是很好用的。

基于文件的会话不是一个好主意,因为它无法扩展,并且需要磁盘I / O.