PHP实现分布式memcache设置web集群session同步的方法


Posted in PHP onApril 10, 2018

本文实例讲述了PHP实现分布式memcache设置web集群session同步的方法。

php的session默认是文件存储:

session.save_handler = files
session.save_path = "/var/lib/php/session"

当做web集群,需要session同步时,将session存到分布式memcache来达到共享同步是个不错的办法

方法:

第1种:

vi /etc/php.ini
session.save_handler = memcache
session.save_path = "tcp://192.168.20.193:11211,tcp://192.168.20.194:11211"

第2种:

在php文件中使用ini_set函数进行配置,适合无法修改配置文件的虚拟主机

<?php
....
ini_set("session.save_handler", "memcache");
ini_set("session.save_path", "tcp://192.168.20.193:11211,tcp://192.168.20.194:11211");
....
?>

重启web服务器

service httpd restart

查看phpinfo

PHP实现分布式memcache设置web集群session同步的方法

测试

192.168.20.193中的login.php

<?php
session_start();
$_SESSION['login_time'] = time();
$_SESSION['username'] = 'test2';
$token=session_id();
echo $token;
//memache实现
$mem = new Memcache();
$mem->addServer('192.168.20.193',11211);
$mem->addServer('192.168.20.194',11211);
/*
//memached实现
$mem = new Memcached();
$servers = array(
 array('192.168.20.193', 11211, 33),
 array('192.168.20.194', 11211, 67)
);
$mem->addServers($servers);
*/
echo '<hr>';
print_r($mem->get($token));
?>
<div>
<a href="http://192.168.20.194/user.php?token=<?php echo $token;?>" rel="external nofollow" target="_balnk">跳转到194网站的个人中心</a>
</div>

192.168.20.194中的user.php

<?php
$mem = new Memcache();
$mem->addServer('192.168.20.193',11211);
$mem->addServer('192.168.20.194',11211);
$token=$_GET['token'];//获取传过来的token
print_r($mem->get($token));
?>
<div>
<a href="http://192.168.20.193/user.php?token=<?php echo $token;?>" rel="external nofollow" target="_balnk">返回193网站的个人中心</a>
</div>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP的FTP学习(二)
Oct 09 PHP
PHP与MySQL开发中页面出现乱码的一种解决方法
Jul 29 PHP
php 缓存函数代码
Aug 27 PHP
php代码运行时间查看类代码分享
Aug 06 PHP
php线性表顺序存储实现代码(增删查改)
Feb 16 PHP
PHP把小数转成整数3种方法
Jun 30 PHP
PHP实现绘制3D扇形统计图及图片缩放实例
Oct 01 PHP
PHP实现事件机制实例分析
Jun 26 PHP
PHP判断JSON对象是否存在的方法(推荐)
Jul 06 PHP
使用PHP免费发送定时短信的实例
Oct 24 PHP
Linux下安装Memcached服务器和客户端与PHP使用示例
Apr 15 PHP
PHP的HTTP客户端Guzzle简单使用方法分析
Oct 30 PHP
PHP实现Redis单据锁以及防止并发重复写入
Apr 10 #PHP
PHP使用zlib扩展实现GZIP压缩输出的方法详解
Apr 09 #PHP
基于CI(CodeIgniter)框架实现购物车功能的方法
Apr 09 #PHP
PHP缓存工具XCache安装与使用方法详解
Apr 09 #PHP
PHP+Session防止表单重复提交的解决方法
Apr 09 #PHP
PHP创建自己的Composer包方法
Apr 09 #PHP
Bootstrap+PHP实现多图上传功能实例详解
Apr 08 #PHP
You might like
PHP安装攻略:常见问题解答(二)
2006/10/09 PHP
坏狼的PHP学习教程之第2天
2008/06/15 PHP
php二维数组转成字符串示例
2014/02/17 PHP
PHP中读取照片exif信息的方法
2014/08/20 PHP
一段实用的php验证码函数
2016/05/19 PHP
js导航菜单(自写)简单大方
2013/03/28 Javascript
js工具方法弹出蒙版
2013/05/08 Javascript
js中return false(阻止)的用法
2013/08/14 Javascript
js获取滚动距离的方法
2015/05/30 Javascript
JavaScript获得url查询参数的方法
2015/07/02 Javascript
JS实现IE状态栏文字缩放效果代码
2015/10/24 Javascript
JS实现水平遍历和嵌套递归操作示例
2019/08/15 Javascript
Node.js之删除文件夹(含递归删除)代码实例
2019/09/09 Javascript
Node.JS获取GET,POST数据之queryString模块使用方法详解
2020/02/06 Javascript
vue双击事件2.0事件监听(点击-双击-鼠标事件)和事件修饰符操作
2020/07/27 Javascript
[01:33]DOTA2上海特级锦标赛 LIQUID战队完整宣传片
2016/03/16 DOTA
python统计一个文本中重复行数的方法
2014/11/19 Python
python逆向入门教程
2018/01/15 Python
python实现冒泡排序算法的两种方法
2018/03/10 Python
python机器学习之贝叶斯分类
2018/03/26 Python
pycharm+PyQt5+python最新开发环境配置(踩坑)
2019/02/11 Python
如何在pycharm中安装第三方包
2020/10/27 Python
Canvas 文本填充线性渐变的使用详解
2020/06/22 HTML / CSS
德国50岁以上交友网站:Lebensfreunde
2020/03/18 全球购物
什么是makefile? 如何编写makefile?
2012/08/08 面试题
农村结婚典礼司仪主持词
2014/03/14 职场文书
歌颂祖国的演讲稿
2014/05/04 职场文书
村抢险救灾方案
2014/05/09 职场文书
信电学院毕业生自荐书
2014/05/24 职场文书
法律系毕业生求职信
2014/05/28 职场文书
促销活动总结怎么写
2014/06/25 职场文书
医院安全生产月活动总结
2014/07/05 职场文书
作文批改评语
2014/12/25 职场文书
2015年幼儿园班主任个人工作总结
2015/10/22 职场文书
交通安全教育心得体会
2016/01/15 职场文书
python必学知识之文件操作(建议收藏)
2021/05/30 Python