时间:2021-05-26
本文实例讲述了PHP实现分布式memcache设置web集群session同步的方法。
php的session默认是文件存储:
session.save_handler = filessession.save_path = "/var/lib/php/session"当做web集群,需要session同步时,将session存到分布式memcache来达到共享同步是个不错的办法
方法:
第1种:
vi /etc/php.inisession.save_handler = memcachesession.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
测试
192.168.20.193中的login.php
<?phpsession_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);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'];//获取传过来的tokenprint_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数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了thinkPHP实现MemCache分布式缓存功能。分享给大家供大家参考,具体如下:两天在研究MemCache分布式缓存的问题时,发现ThinkP
Kafka集群搭建分为单节点的伪分布式集群和多节点的分布式集群两种,首先来看一下单节点伪分布式集群安装。单节点伪分布式集群是指集群由一台ZooKeeper服
一.先说区别:一句话:分布式是并联工作的,集群是串联工作的。1.分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器集中在一起,实现同一业务。分布式
前言我们在搭建完集群环境后,不得不考虑的一个问题就是用户访问产生的session如何处理。session的处理有很多种方法,详情见转载的上篇博客:集群/分布式环
本文实例讲述了memcache一致性hash的php实现方法。分享给大家供大家参考。具体如下:最近在看一些分布式方面的文章,所以就用php实现一致性hash来练