在使用 Rack::Session::Dalli 的 expire_after 时需要注意
Rack::Session::Dalli是一个很棒的模块,可以用作替代Rack::Session::Memcache。
在指定Rack::Session::Dalli中的expire_after时,最大值是2591999(60 * 60 * 24 * 30 – 1)。如果超过这个值,似乎会立即过期而不会将值保存到memcached中。注意,由于没有任何异常提示,所以需要小心。
子:妈妈,我可以去公园玩吗?
母:好的,但是请不要迟回家,我们要晚上一起吃晚饭。
class MyApp < Sinatra::Base
use Rack::Session::Dalli,
memcache_server: 'localhost:11211',
domain: 'mydomain.com',
path: '/',
expire_after: 60 * 60 * 24 * 30 - 1 # 2592000未満の値にしよう!
# (略)
end