您的位置:首页 > 数据库 > Memcache

用memcache做session共享

2016-02-24 20:15 337 查看
测试的前题:
在WEB负载均衡状态下,当用户在WEB1服务器登陆,下次在进行任意操作时,可能会在WEB2,WEB3...中进行请求的处理,因此,在非WEB1的服务器中是不会有SESSION的,到此,需要用到SESSION共享存储来解决该问题。

将session以memcache扩展库进行存储数据

<?php
//首先用memcache的扩展session存储器进行设置
ini_set('session.save_handler', 'memcache'); //session的处理方式为:memcache
ini_set('session.save_path', 'tcp://127.0.0.1:11211');//session的保存位置为memcache服务器的地址+端口
session_start();
$_SESSION['address']  = 'shandong_printce';


2.测试存储的session是否存在,用于在不同的WEB服务器中检查用户是否登陆
<?php
//在memcached中读取session的数据,是以session_id()作为key的
$session_id = session_id();
$memcache = new memcache;
$memcache->connect('127.0.0.1',11211); //本地测试,这里需要填写 memcached的服务器所在ip与端口
if($memcache->get($session_id)){
echo 'LOGIN, SUCCESS...';
}
以上为个人测试并做记录,如有不正确的地方,欢迎广大朋友留言指正,相互学习。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: