ruby – 在`Rack :: Session :: Cookie’上使用`Rack :: Session :: Pool`

Rack::Session::PoolRack::Session::Cookie的不同用例是什么?

据我所知(如果我错了,纠正我):

> Cookie存储所有会话密钥:值对直接在cookie(编组)
>池只将一个id存储在cookie中,并在@pool中维护剩余的会话哈希

那么,选择其中一个的含义是什么?什么是@pool?为什么Pool需要从Cookie公开不同的公共接口?为什么文档如此缺乏?

解决方法

你是对的,Session :: Cookie封送和存储cookie中的会话.

Session :: Pool将会话保留在内存中.

游泳池有一些优点:

- faster,no marshaling needed 
- you can keep any objects with it(read ones that can not be marshaled)

但是当您重新启动应用程序时,所有会话都将丢失.

使用Cookie,您将以编组的价格重启持续会话.

替代品 – Session::Memcache,Session::Mongo

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...