用于Lithium Sessions的Memcache,Mongodb或其他数据库存储

时间:2012-05-03 23:02:04

标签: lithium

我对Lithium框架感到满意,并且想知道是否有任何样本可以使用MongoDB或Memcache进行Lithium Sessions。是否需要编写新的会话适配器?

2 个答案:

答案 0 :(得分:4)

一个选项是将会话适配器设置为锂中的'Php'并将'session.save_handler' => 'memcached'传递给配置选项,配置选项将使用memcached扩展的保存处理程序在memcache中存储会话:

Session::config(array(
    'default' => array(
        'adapter' => 'Php',
        'session.save_handler' => 'memcached',
        'session.save_path' => 'sess1:11211, sess2:11211'
    )
));

http://php.net/manual/en/memcached.sessions.php

我使用'Model'适配器(可在lab.lithify.me上找到)在MongoDb中存储会话:

Session::config(array(
    'default' => array(
        'adapter' => 'Model',
        'model' => 'app\models\Sessions',
        'name' => 'session'
    )
));

http://lab.lithify.me/lab/extensions/view/a68f6ad626aaf7be37805f8e72f672e2

答案 1 :(得分:3)

必须为这些人编写新的适配器:

除非你继续使用PHP适配器并利用在PHP 5.4中变得更好的session_set_save_handler

我会选择第二种解决方案。