PHP 解决session死锁的方法

 更新时间:2013年06月20日 16:55:26   作者:  
本篇文章是对PHP解决session死锁的方法进行了详细的分析介绍,需要的朋友参考下
今天在开发碰到个棘手的问题 。
当异步请求后台处理一个大数据量操作时  请求其他控制器都没返回信息了。。起初以为是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实现随机发扑克牌

    PHP实现随机发扑克牌

    这篇文章主要为大家详细介绍了PHP实现随机发扑克牌,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • PHP中使用Memache作为进程锁的操作类分享

    PHP中使用Memache作为进程锁的操作类分享

    这篇文章主要介绍了PHP中使用Memache作为进程锁的操作类分享,本文直接给出类实现代码以及应用示例,需要的朋友可以参考下
    2015-03-03
  • php中使用接口实现工厂设计模式的代码

    php中使用接口实现工厂设计模式的代码

    php实现工厂设计模式,使用接口实现,表面上接口没有什么用,因为php是类型自动转换的。实现上使用接口可以约束类的定义,从而实现一致的访问
    2012-06-06
  • php实现首页链接查询 友情链接检查的代码

    php实现首页链接查询 友情链接检查的代码

    网站首页超链接反查 友情链接查询 外链查询 ,对于其中的思路
    2010-01-01
  • header导出Excel应用示例

    header导出Excel应用示例

    本文为大家介绍下使用header导出Excel,具体实现代码如下,感兴趣的朋友不要错过
    2014-01-01
  • PHP服务器页面间跳转实现方法

    PHP服务器页面间跳转实现方法

    在ASP中,我们可以使用Server.Transfer来实现在服务器端重定向,PHP中虽然没有这样的函数,但是要实现类似的跳转也不难
    2012-08-08
  • PHP文件上传操作实例详解

    PHP文件上传操作实例详解

    这篇文章主要介绍了PHP文件上传操作,结合实例形式详细分析了php文件传输操作的实现技巧与相关注意事项,需要的朋友可以参考下
    2016-09-09
  • 方便实用的PHP生成静态页面类(非smarty)

    方便实用的PHP生成静态页面类(非smarty)

    不喜欢Smarty,直接写了一个生成静态的类,方便简单实用,希望大家继续完善。
    2008-11-11
  • php实现文章置顶功能的方法

    php实现文章置顶功能的方法

    这篇文章主要介绍了php实现文章置顶功能的方法,结合实例形式分析了php置顶功能的操作步骤与相关实现技巧,需要的朋友可以参考下
    2016-10-10
  • PHP中ADODB类详解

    PHP中ADODB类详解

    1. 前言 ADODB 是 Active Data Objects Data Base 的简称,它是一种 PHP 存取数据库的函式组件。现在 SFS3 系统 (校园自由软件交流网学务系统) 计划的主持人陈莹光老师,决定采用此一组件,为了让更多有心参与该项目的伙伴们能够顺利加入发展的行列,小弟认为有必要把 ADODB 的中文入门介绍写出来,以方便伙伴们参考备查。
    2008-03-03

最新评论