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 相关文章推荐
超强分页类2.0发布,支持自定义风格,默认4种显示模式
Jan 02 PHP
基于Zookeeper的使用详解
May 02 PHP
Smarty foreach控制循环次数的实现详解
Jul 03 PHP
php while循环得到循环次数
Oct 26 PHP
php小技巧之过滤ascii控制字符
May 14 PHP
php中隐形字符65279(utf-8的BOM头)问题
Aug 16 PHP
使用PHPCMS搭建wap手机网站
Sep 20 PHP
PHP中set error handler函数用法小结
Nov 11 PHP
thinkphp 抓取网站的内容并且保存到本地的实例详解
Aug 25 PHP
php swoole多进程/多线程用法示例【基于php7nts版】
Aug 12 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
Dec 02 PHP
PHP 99乘法表的几种实现代码
Oct 13 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实现的Captcha验证码类实例
2014/09/22 PHP
YII2框架中excel表格导出的方法详解
2017/07/21 PHP
wordpress自定义标签云与随机获取标签的方法详解
2019/03/22 PHP
javascript类继承机制的原理分析
2009/09/12 Javascript
原生JavaScript实现连连看游戏(附源码)
2013/11/05 Javascript
Javascript的闭包详解
2014/12/26 Javascript
js实现横向百叶窗效果网页切换动画效果的方法
2015/03/02 Javascript
JQuery创建DOM节点的方法
2015/06/11 Javascript
深入解析JavaScript的闭包机制
2015/10/20 Javascript
原生JavaScript实现滚动条效果
2020/03/24 Javascript
搞定immutable.js详细说明
2016/05/02 Javascript
JavaScript必知必会(十) call apply bind的用法说明
2016/06/08 Javascript
JS全局变量和局部变量最新解析
2016/06/24 Javascript
Angular.js中定时器循环的3种方法总结
2017/04/27 Javascript
原生JS封装_new函数实现new关键字的功能
2018/08/12 Javascript
微信小程序使用车牌号输入法的示例代码
2019/08/20 Javascript
微信小程序官方动态自定义底部tabBar的例子
2019/09/04 Javascript
对pandas的层次索引与取值的新方法详解
2018/11/06 Python
【python】matplotlib动态显示详解
2019/04/11 Python
Python pip替换为阿里源的方法步骤
2019/07/02 Python
python 操作hive pyhs2方式
2019/12/21 Python
pytorch中torch.max和Tensor.view函数用法详解
2020/01/03 Python
详解tensorflow2.x版本无法调用gpu的一种解决方法
2020/05/25 Python
html5简介及新增功能介绍
2020/05/18 HTML / CSS
戴森台湾线上商城:Dyson Taiwan
2018/05/21 全球购物
华硕新加坡官方网上商店:ASUS Singapore
2020/07/09 全球购物
毕业自我鉴定
2013/11/05 职场文书
关于赌博的检讨书
2014/01/24 职场文书
幼儿园家长寄语
2014/04/02 职场文书
人力资源管理毕业生自荐信
2014/06/26 职场文书
授权委托书格式范文
2014/08/02 职场文书
三严三实对照检查材料范文
2014/09/23 职场文书
机关干部个人对照检查材料思想汇报
2014/09/28 职场文书
2014年作风建设工作总结
2014/10/29 职场文书
幼儿园老师新年寄语2015
2014/12/08 职场文书
分析JVM源码之Thread.interrupt系统级别线程打断
2021/06/29 Java/Android