PHP实现负载均衡session共享redis缓存操作示例


Posted in PHP onAugust 22, 2018

本文实例讲述了PHP实现负载均衡session共享redis缓存操作。分享给大家供大家参考,具体如下:

1、首先先创建html表单页面

<meta chatset='utf-8'>
<center>
<form action="se.php" method="post">
 <table>
  <tr>
   <td>帐号:</td>
   <td><input type="text" name="username"></td>
  </tr>
  <tr>
   <td>密码:</td>
   <td><input type="password" name="pwd"></td>
  </tr>
  <tr>
   <td></td>
   <td><input type="submit" value="登录"></td>
  </tr>
 </table>
</form>
</center>

2、创建接受表单的文件

<?php
 header('content-type:text/html;charset=utf-8');
 set_time_limit(10);
 ini_set("session.save_handler",'redis');//开启php.ini中的redis配置
 ini_set("session.save_path","tcp://192.168.1.70:6379");//第一台服务器的redis
 session_start();//开启session
 $username = $_POST['username'];
 $_SESSION['username'] = $username;
 echo "<script>alert('登录成功!');location.href='from.php'</script>";//登录成功后跳转到欢迎登录页面
?>

3、跳转到from.php去判断第一台服务器的redis中的session是否存到了本台服务器的session中

<?php
 header('content-type:text/html;charset=utf-8');
 set_time_limit(10);
 ini_set("session.save_handler",'redis');//开启php.ini中的redis配置
 ini_set("session.save_path","tcp://192.168.1.70:6379");//第一台服务器的redis
 session_start();//开启session
 $username = isset($_SESSION['username']) ? $_SESSION['username'] : '';//判断当前是否存在session
 //$id = $_SESSION['PHPSESSID'];
 //echo $id;
 if(empty($username)){
  echo "<script>alert('请重新登录!');location.href='index.php'</script>";
 }else{
  echo "欢迎".$username."登录";
 }
?>

这样就简单了实现了redis session共享的功能,要测试的话需要两台服务器,建议使用linux 比较好用

linux上安装redis可参考《Linux平台安装redis及redis扩展的方法》

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

PHP 相关文章推荐
超级简单的发送邮件程序
Oct 09 PHP
php中神奇的fastcgi_finish_request
May 02 PHP
解析在apache里面给php写虚拟目录的详细方法
Jun 24 PHP
PHP迭代器实现斐波纳契数列的函数
Nov 12 PHP
Destoon旺旺无法正常显示,点击提示“会员名不存在”的解决办法
Jun 21 PHP
jquery获取多个checkbox的值异步提交给php的方法
Jun 24 PHP
PHP模板引擎Smarty内建函数foreach,foreachelse用法分析
Apr 11 PHP
如何正确配置Nginx + PHP
Jul 15 PHP
thinkPHP中钩子的两种配置调用方法详解
Nov 11 PHP
php7安装yar扩展的方法详解
Aug 03 PHP
PHP实用小技巧之调用录像的方法
Dec 05 PHP
PHP的imageTtfText()函数深入详解
Mar 03 PHP
PHP封装的完整分页类示例
Aug 21 #PHP
php代码调试利器firephp安装与使用方法分析
Aug 21 #PHP
CodeIgniter框架钩子机制实现方法【hooks类】
Aug 21 #PHP
PHP依赖注入原理与用法分析
Aug 21 #PHP
PHP 二维array转换json的实例讲解
Aug 21 #PHP
PHP删除数组中指定值的元素常用方法实例分析【4种方法】
Aug 21 #PHP
php 将json格式数据转换成数组的方法
Aug 21 #PHP
You might like
用libtemplate实现静态网页生成
2006/10/09 PHP
关于初学PHP时的知识积累总结
2013/06/07 PHP
php异常处理使用示例
2014/02/25 PHP
CodeIgniter多语言实现方法详解
2016/01/20 PHP
PHP微信刮刮卡 附微信接口
2016/07/22 PHP
在Mac OS下搭建LNMP开发环境的步骤详解
2017/03/10 PHP
老生常谈PHP面向对象之命令模式(必看篇)
2017/05/24 PHP
PHP基于curl post实现发送url及相关中文乱码问题解决方法
2017/11/25 PHP
laravel获取不到session的三种解决办法【推荐】
2018/09/16 PHP
javascript小数计算出现近似值的解决办法
2010/02/06 Javascript
js常用代码段收集
2011/10/28 Javascript
jquery中添加属性和删除属性
2015/06/03 Javascript
javascript删除数组重复元素的方法汇总
2015/06/24 Javascript
JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同
2015/11/15 Javascript
理解JS绑定事件
2016/01/19 Javascript
jquery实现具有嵌套功能的选项卡
2016/02/12 Javascript
Javascript将JSON日期格式化
2016/08/23 Javascript
js生成随机数方法和实例
2017/01/17 Javascript
nodeJS(express4.x)+vue(vue-cli)构建前后端分离实例(带跨域)
2017/07/05 NodeJs
react-native 圆弧拖动进度条实现的示例代码
2018/04/12 Javascript
JS加密插件CryptoJS实现的DES加密示例
2018/08/16 Javascript
详解@angular/cli 改变默认启动端口两种方式
2018/11/29 Javascript
es6 symbol的实现方法示例
2019/04/02 Javascript
微信小程序 如何获取网络状态
2019/07/26 Javascript
js实现图片上传到服务器和回显
2020/01/19 Javascript
Python之os操作方法(详解)
2017/06/15 Python
Python实现的本地文件搜索功能示例【测试可用】
2018/05/30 Python
Python交互环境下实现输入代码
2018/06/22 Python
pymysql 开启调试模式的实现
2019/09/24 Python
pycharm新建Vue项目的方法步骤(图文)
2020/03/04 Python
python 实现PIL模块在图片画线写字
2020/05/16 Python
Bogner美国官网:滑雪服中的”Dior”
2018/01/30 全球购物
Abbacino官网:包、钱包和女士配饰
2019/04/15 全球购物
英文自荐信格式
2013/11/28 职场文书
MySQL系列之十五 MySQL常用配置和性能压力测试
2021/07/02 MySQL
nginx安装以及配置的详细过程记录
2021/09/15 Servers