PHP 解决session死锁的方法


Posted in PHP onJune 20, 2013

今天在开发碰到个棘手的问题 。
当异步请求后台处理一个大数据量操作时  请求其他控制器都没返回信息了。。起初以为是Ext 框架设置了ajax同步造成的。
后来发现时session 死锁造成其他控制器在等待session 完成后才能操作。(主要是用户登录判断需要更新session)
当PHP 处理大数据量操作时 不能及时操作完成 这时候又有访问其他控制器或者
异步请求时候会造成session 死锁现象
和同事探讨了下 可使用 session_write_close() 解决此问题

Description
void session_write_close ( void )
End the current session and store session data.
Session data is usually stored after your script terminated without the need to call session_write_close(), but as session data is locked to prevent concurrent writes only one script may operate on a session at any time. When using framesets together with sessions you will experience the frames loading one by one due to this locking. You can reduce the time needed to load all the frames by ending the session as soon as all changes to session variables are done.

功能: 结束当前的session 操作 保存session 数据 
说的很明白了, 当脚本请求没有调用session_write_close(); 时虽然 session  的数据是存储住了。但是 session Date(也就是session 文件) 是锁住状态
是为了避免 其他应用此时操作session 造成不必要后果   当使用框架时 不同文件可能会不停地操作session 为了不造成其他操作对当前session 的死锁等待
可使用此函数...
PHP 相关文章推荐
玩转图像函数库―常见图形操作
Sep 03 PHP
基于mysql的论坛(2)
Oct 09 PHP
main.php
Dec 09 PHP
关于PHP的curl开启问题探讨
Apr 08 PHP
PhpDocumentor 2安装以及生成API文档的方法
May 21 PHP
CI框架中libraries,helpers,hooks文件夹详细说明
Jun 10 PHP
异步加载技术实现当滚动条到最底部的瀑布流效果
Sep 16 PHP
PHP多个文件上传到服务器实例
Oct 29 PHP
关于php中一些字符串总结
May 05 PHP
PHP+MySQL实现输入页码跳转到指定页面功能示例
Jun 01 PHP
Yii框架核心组件类实例详解
Aug 06 PHP
laravel model模型处理之修改查询或修改字段时的类型格式案例
Oct 17 PHP
解析PHP可变函数的经典用法
Jun 20 #PHP
使用PHP求两个文件的相对路径
Jun 20 #PHP
基于PHP服务端图片生成缩略图的方法详解
Jun 20 #PHP
解析thinkphp中的导入文件标签
Jun 20 #PHP
解析thinkphp import 文件内容变量失效的问题
Jun 20 #PHP
解析用PHP实现var_export的详细介绍
Jun 20 #PHP
PHP 实现explort() 功能的详解
Jun 20 #PHP
You might like
PHP 多维数组排序(usort,uasort)
2010/06/30 PHP
深入理解PHP原理之执行周期分析
2016/06/01 PHP
js实现的网站首页随机公告随机公告
2007/03/14 Javascript
javaScript Array(数组)相关方法简述
2009/07/25 Javascript
快速排序 php与javascript的不同之处
2011/02/22 Javascript
一个页面元素appendchild追加到另一个页面元素的问题
2013/01/27 Javascript
JQuery onload、ready概念介绍及使用方法
2013/04/27 Javascript
Tab切换组件(选项卡功能)实例代码
2013/11/21 Javascript
js获取内联样式的方法
2015/01/27 Javascript
JS动态日期时间的获取方法
2015/09/28 Javascript
jQuery使用JSONP实现跨域获取数据的三种方法详解
2017/05/04 jQuery
微信小程序的生命周期的详解
2017/10/19 Javascript
vue实现商城购物车功能
2017/11/27 Javascript
利用js实现前后台传送Json的示例代码
2018/03/29 Javascript
详解React之父子组件传递和其它一些要点
2018/06/25 Javascript
Electron-vue脚手架改造vue项目的方法
2018/10/22 Javascript
javascript实现鼠标点击生成文字特效
2019/12/24 Javascript
vue fetch中的.then()的正确使用方法
2020/04/17 Javascript
js 动态校验开始结束时间的实现代码
2020/05/25 Javascript
jQuery实现可以扩展的日历
2020/12/01 jQuery
[44:40]2018DOTA2亚洲邀请赛3月30日 小组赛A组Liquid VS OG
2018/03/31 DOTA
[01:06]DOTA2小知识课堂 Ep.01 TP出门不要忘记帮队友灌瓶哦
2019/12/05 DOTA
python selenium UI自动化解决验证码的4种方法
2018/01/05 Python
Python Numpy 数组的初始化和基本操作
2018/03/13 Python
python 创建一个空dataframe 然后添加行数据的实例
2018/06/07 Python
python selenium firefox使用详解
2019/02/26 Python
Django接收自定义http header过程详解
2019/08/23 Python
python实现IOU计算案例
2020/04/12 Python
详解pycharm2020.1.1专业版安装指南(推荐)
2020/08/07 Python
基于html5 canvas实现漫天飞雪效果实例
2014/09/10 HTML / CSS
GoDaddy英国:全球排名第一的域名注册商
2018/06/08 全球购物
阿联酋优惠券服务:Living Kool
2019/12/12 全球购物
史上最全面的Java面试题汇总!
2015/02/03 面试题
春节联欢晚会主持词范文
2014/03/24 职场文书
《狼和小羊》教学反思
2014/04/20 职场文书
少先队大队委竞选口号
2015/12/25 职场文书