ruby-on-rails – 在memcached中清除缓存时保留会话

我在Rails中使用memcached / dalli进行缓存.我还使用dalli_store作为我的会话存储.

问题是,当我清除视图缓存时,用户将自动从系统中注销.我认为这是因为memcached中的所有数据都被清除,因此会话数据丢失.

有办法避免这种情况吗?

最佳答案 最后,我使用Redis作为会话存储.

gem 'redis-rails'

并在会话存储类型中指定它:

AppEx::Application.config.session_store :redis_store,

然后我可以使用Memcached作为纯缓存并清除它而不影响用户登录状态.

这也很好,因为在使用Memcached时,用户会在缓存已满时被踢出.现在用户会话持续时间更长.

点赞