标签:blog http io os ar 使用 文件 数据 on
在Yii里面我想达到将Session信息存储到Memcached里面只需要稍做配置即可,我当前的Yii版本为yii-1.1.13.e9e4a0
'session' => array(
'class' => 'CCacheHttpSession',
'autoStart' => true,
'cacheID' => 'sessionCache', // we only use the sessionCache to store the session
'cookieMode' => 'only',
'timeout' => 1400,
),
'sessionCache' => array(
'class' => 'system.caching.CMemCache',
'servers' => array(
array(
'host' => '192.168.10.193',
'port' => 11211,
'weight' => 6
),
array(
'host' => '192.168.10.226',
'port' => 11211,
'weight' => 3
),
array(
'host' => '192.168.10.228',
'port' => 11211,
'weight' => 2
),
),
),测试一下登录没有问题,然后非常好奇,它真的就存入到Memcached里面了吗?我们如何来验证一下呢?
为了省去新建一个Controller所以我就直接写一个action到SiteController里面去了。
public function actionTestSessionWithMemcached(){
/*
* 得到sessionID号
* 计算出来存在memcached的key值是多少.
*/
$sessionId = Yii::app()->session->sessionID;
echo "key:", $key = CCacheHttpSession::CACHE_KEY_PREFIX.$sessionId;
/**
* 这相当于是直接使用Memcached 连接,和session没有任何挂钩,
* 我们来看一下session的数据是否真的就存在了memcached里边。
* 通过计算出来的key直接用 get命令获取然后将数据打印出来就能看到值了。
* 测试的时候先登录噢,别不登录就开始测试估计会获取不到值,以为有问题呢!
*/
$mem = Yii::app()->sessionCache;
$data =$mem->get($key);
var_dump($data);
}Yii在Web分布式下将Session存储到Memcached
标签:blog http io os ar 使用 文件 数据 on
原文地址:http://blog.csdn.net/liangpz521/article/details/40507217