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 相关文章推荐
如何给phpadmin一个保护
Oct 09 PHP
PHP通过COM使用ADODB的简单例子
Dec 31 PHP
php google或baidu分页代码
Nov 26 PHP
PHP5与MySQL数据库操作常用代码 收集
Mar 21 PHP
php中大括号作用介绍
Mar 22 PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
Jul 05 PHP
PHP中使用FFMPEG获取视频缩略图和视频总时长实例
May 04 PHP
PHP实现显示照片exif信息的方法
Jul 11 PHP
php使用Jpgraph绘制复杂X-Y坐标图的方法
Jun 10 PHP
php项目开发中用到的快速排序算法分析
Jun 25 PHP
PHP获取HTTP body内容的方法
Dec 31 PHP
如何在PHP中使用AES加密算法加密数据
Jun 24 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多例模式介绍
2013/06/24 PHP
php配置php-fpm启动参数及配置详解
2013/11/04 PHP
ThinkPHP开发框架函数详解:C方法
2015/08/14 PHP
Yii框架上传图片用法总结
2016/03/28 PHP
使用ThinkPHP的自动完成实现无限级分类实例详解
2016/09/02 PHP
10个值得深思的PHP面试题
2016/11/14 PHP
详解PHP多个进程配合redis的有序集合实现大文件去重
2019/03/06 PHP
Valerio 发布了 Mootools
2006/09/23 Javascript
javascript在事件监听方面的兼容性小结
2010/04/07 Javascript
niceTitle 基于jquery的超链接提示插件
2010/05/31 Javascript
jQuery异步获取json数据方法汇总
2014/12/22 Javascript
超详细的javascript数组方法汇总
2015/11/21 Javascript
jQuery实现的纵向下拉菜单实例详解【附demo源码下载】
2016/07/09 Javascript
原生Javascript和jQuery做轮播图简单例子
2016/10/11 Javascript
使用BootStrap和Metroui设计的metro风格微网站或手机app界面
2016/10/21 Javascript
JavaScript微信定位功能实现方法
2016/11/29 Javascript
Vue自定义图片懒加载指令v-lazyload详解
2020/12/31 Javascript
使用vue的v-for生成table并给table加上序号的实例代码
2017/10/27 Javascript
javascript按顺序加载运行js方法
2017/12/01 Javascript
webpack打包node.js后端项目的方法
2018/03/10 Javascript
基于Axios 常用的请求方法别名(详解)
2018/03/13 Javascript
angular.js实现列表orderby排序的方法
2018/10/02 Javascript
Vue发布订阅模式实现过程图解
2020/04/30 Javascript
python+matplotlib绘制饼图散点图实例代码
2018/01/20 Python
python中numpy的矩阵、多维数组的用法
2018/02/05 Python
Appium+python自动化之连接模拟器并启动淘宝APP(超详解)
2019/06/17 Python
Python中BeautifuSoup库的用法使用详解
2019/11/15 Python
python实现图片素描效果
2020/09/26 Python
HTML5 微格式和相关的属性名称
2010/02/10 HTML / CSS
会议主持词
2014/03/17 职场文书
违反交通法规检讨书
2014/09/10 职场文书
vue+elementui 实现新增和修改共用一个弹框的完整代码
2021/06/08 Vue.js
浅谈什么是SpringBoot异常处理自动配置的原理
2021/06/21 Java/Android
Android Flutter实现图片滑动切换效果
2022/04/07 Java/Android
Redis特殊数据类型Geospatial地理空间
2022/06/01 Redis
python playwrigh框架入门安装使用
2022/07/23 Python