【问题标题】:Choosing adequate Rails session store选择适当的 Rails 会话存储
【发布时间】:2012-05-02 02:31:58
【问题描述】:

我目前正在使用基于 memcached 的会话存储 (https://github.com/mperham/dalli)。有时 memcached 服务器不可用(“没有可用的服务器”),然后我的用户将无法再使用该应用程序。目前我怀疑基于 memcached 的会话是否是正确的决定。

由于我在会话中只存储很少的密钥,我正在考虑切换回 cookie 存储。还是我应该考虑使用 ActiveRecord 存储?有什么建议吗?

谢谢!

【问题讨论】:

  • 我从 heroku 支持人员那里听说,memcache 存在一些问题。但这些都解决了。所以与 dalli 一起使用仍然很好......特别是如果你在 heroku 中部署。
  • 如果您使用 cookie 存储,请确保不存储需要编组的数据(如日期),否则您将无法升级 ruby​​ 版本而不会在会话加载期间出错
  • 所以你今天在 heroku 上遇到了类似的问题?这是我在 heroku 上运行生产应用程序的第一周,这就是为什么我非常不安......这种情况在 heroku 上发生的频率是否比 memcache 不可用时更频繁?
  • 根据status.heroku.com,今天的memcached插件没有问题...

标签: ruby-on-rails session cookies


【解决方案1】:

如果您在会话中存储的密钥很少,我显然认为您应该使用 Cookie 存储。

对于这种基本需求,它更容易维护。

指南对此有一些建议:http://guides.rubyonrails.org/action_controller_overview.html#session

【讨论】:

  • 如果您有严格的安全需求,请小心,因为 cookie 存储可能会使您的应用程序处于开放状态,容易受到重放攻击。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-08
  • 2014-06-14
相关资源
最近更新 更多