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 相关文章推荐
php为什么选mysql作为数据库? Mysql 创建用户方法
Jul 02 PHP
libmysql.dll与php.ini是否真的要拷贝到c:\windows目录下呢
Mar 15 PHP
php防攻击代码升级版
Dec 29 PHP
PHP FOR MYSQL 代码生成助手(根据Mysql里的字段自动生成类文件的)
Jul 23 PHP
php获取远程图片的两种 CURL方式和sockets方式获取远程图片
Nov 07 PHP
php数组的概述及分类与声明代码演示
Feb 26 PHP
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
Jun 12 PHP
php实现smarty模板无限极分类的方法
Dec 07 PHP
详解js异步文件加载器
Jan 24 PHP
thinkPHP商城公告功能开发问题分析
Dec 01 PHP
PHP异常类及异常处理操作实例详解
Dec 19 PHP
PHP7 list() 函数修改
Mar 09 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
使用 eAccelerator加速PHP代码的方法
2007/09/30 PHP
谈谈关于JavaScript 中的 MVC 模式
2013/04/11 Javascript
javascript中的=等号个数问题两个跟三个有什么区别
2013/10/23 Javascript
js动态设置鼠标事件示例代码
2013/10/30 Javascript
Jquery 获取指定标签的对象及属性的设置与移除
2014/05/29 Javascript
JavaScript中的对象的extensible属性介绍
2014/12/30 Javascript
JavaScript获取表单enctype属性的方法
2015/04/02 Javascript
基于jQuery全屏焦点图左右切换插件responsiveslides
2015/09/07 Javascript
详解AngularJS中的filter过滤器用法
2016/01/04 Javascript
深入探究AngularJS框架中Scope对象的超级教程
2016/01/04 Javascript
jQuery xml字符串的解析、读取及查找方法
2016/03/01 Javascript
解决JS组件bootstrap table分页实现过程中遇到的问题
2016/04/21 Javascript
JS监听微信、支付宝等移动app及浏览器的返回、后退、上一页按钮的事件方法
2016/08/05 Javascript
Bootstrap基本插件学习笔记之折叠(22)
2016/12/08 Javascript
基于JavaScript实现自定义滚动条
2017/01/25 Javascript
基于jQuery的表单填充实例
2017/08/22 jQuery
在vue中添加Echarts图表的基本使用教程
2017/11/22 Javascript
关于TypeScript模块导入的那些事
2018/06/12 Javascript
JS在if中的强制类型转换方式
2018/07/15 Javascript
vue2.x集成百度UEditor富文本编辑器的方法
2018/09/21 Javascript
es6 filter() 数组过滤方法总结
2019/04/03 Javascript
node.js实现简单的压缩/解压缩功能示例
2019/11/05 Javascript
javascript实现画板功能
2020/04/12 Javascript
Vue项目如何引入bootstrap、elementUI、echarts
2020/11/26 Vue.js
一行JavaScript代码如何实现瀑布流布局
2020/12/11 Javascript
Python交换变量
2008/09/06 Python
Flask SQLAlchemy一对一,一对多的使用方法实践
2013/02/10 Python
通过Python使用saltstack生成服务器资产清单
2016/03/01 Python
Python实现简单字典树的方法
2016/04/29 Python
python操作excel的方法
2018/08/16 Python
Python序列化pickle模块使用详解
2020/03/05 Python
OpenCV读取与写入图片的实现
2020/10/13 Python
使用html2canvas实现将html内容写入到canvas中生成图片
2020/01/03 HTML / CSS
反邪教警示教育方案
2014/05/13 职场文书
大学生军训心得体会5篇
2019/08/15 职场文书
vue实现水波涟漪效果的点击反馈指令
2021/05/31 Vue.js