【发布时间】:2010-02-14 04:37:13
【问题描述】:
我想为每个浏览器(用户设置)存储一些持久数据,并且不想要求登录才能使用该站点。实现这一目标的最佳方法是什么?
我考虑了两种方法:
- 将信息存储在会话 cookie 中。这种方法的问题是我需要在会话 cookie 上设置过期时间,这会导致用户的登录会话在浏览器关闭时不会过期。
- 将信息存储在数据库中,并将检索密钥存储在客户端的 cookie 中。我担心性能问题,因为这需要额外的查询和可能的反序列化来检索数据。由于性能原因,Rails 似乎不久前从 ActiveRecordStore 切换了默认设置:https://web.archive.org/web/20120102024844/https://www.ryandaigle.com/articles/2007/2/21/what-s-new-in-edge-rails-cookie-based-sessions
推荐的实现方式是什么?
【问题讨论】:
标签: ruby-on-rails session