首页 > 系统服务 > 详细

用memcache做session共享

时间:2016-02-24 21:12:42      阅读:282      评论:0      收藏:0      [点我收藏+]


测试的前题:

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


  1. 将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...‘;
}

以上为个人测试并做记录,如有不正确的地方,欢迎广大朋友留言指正,相互学习。

用memcache做session共享

原文:http://stoneryan.blog.51cto.com/4534150/1744769

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!