• 售前

  • 售后

热门帖子
入门百科

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

[复制链接]
123456823 显示全部楼层 发表于 2021-10-25 19:36:39 |阅读模式 打印 上一主题 下一主题
本文实例讲述了PHP实现分布式memcache设置web集群session同步的方法。
php的session默认是文件存储:
  1. session.save_handler = files
  2. session.save_path = "/var/lib/php/session"
复制代码
当做web集群,需要session同步时,将session存到分布式memcache来到达共享同步是个不错的办法
方法:
第1种:
  1. vi /etc/php.ini
复制代码
  1. session.save_handler = memcache
  2. session.save_path = "tcp://192.168.20.193:11211,tcp://192.168.20.194:11211"
复制代码
第2种:
在php文件中使用ini_set函数举行设置,适合无法修改设置文件的虚拟主机
  1. <?php
  2. ....
  3. ini_set("session.save_handler", "memcache");
  4. ini_set("session.save_path", "tcp://192.168.20.193:11211,tcp://192.168.20.194:11211");
  5. ....
  6. ?>
复制代码
重启web服务器
  1. service httpd restart
复制代码
检察phpinfo

测试
192.168.20.193中的login.php
  1. <?php
  2. session_start();
  3. $_SESSION['login_time'] = time();
  4. $_SESSION['username'] = 'test2';
  5. $token=session_id();
  6. echo $token;
  7. //memache实现
  8. $mem = new Memcache();
  9. $mem->addServer('192.168.20.193',11211);
  10. $mem->addServer('192.168.20.194',11211);
  11. /*
  12. //memached实现
  13. $mem = new Memcached();
  14. $servers = array(
  15. array('192.168.20.193', 11211, 33),
  16. array('192.168.20.194', 11211, 67)
  17. );
  18. $mem->addServers($servers);
  19. */
  20. echo '<hr>';
  21. print_r($mem->get($token));
  22. ?>
  23. <div>
  24. <a href="http://192.168.20.194/user.php?token=<?php echo $token;?>" rel="external nofollow" target="_balnk">跳转到194网站的个人中心</a>
  25. </div>
复制代码
192.168.20.194中的user.php
  1. <?php
  2. $mem = new Memcache();
  3. $mem->addServer('192.168.20.193',11211);
  4. $mem->addServer('192.168.20.194',11211);
  5. $token=$_GET['token'];//获取传过来的token
  6. print_r($mem->get($token));
  7. ?>
  8. <div>
  9. <a href="http://192.168.20.193/user.php?token=<?php echo $token;?>" rel="external nofollow" target="_balnk">返回193网站的个人中心</a>
  10. </div>
复制代码
更多关于PHP相关内容感爱好的读者可检察本站专题:《php缓存技能总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《php面向对象程序计划入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
渴望本文所述对各人PHP程序计划有所帮助。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作