位置: 编程技术 - 正文

PHP中Session可能会引起并发问题(php的session)

编辑:rootadmin

推荐整理分享PHP中Session可能会引起并发问题(php的session),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php中session使用,php中session的作用,php中session使用,php中的session,php中的session,php session_start,php session_id,php中的session,内容如对您有帮助,希望把文章链接给更多的朋友!

在进行Web应用程序开发的时候,人们经常会用Session存储数据。但可能有人不知道,在PHP中,Session使用不当可能会引起并发问题。印度医疗行业软件解决方案提供商Plus Technologies高级工程师Kishan Gor在个人博客上对这个问题进行了阐释。

PHP中Session可能会引起并发问题(php的session)

  如果同一个客户端并发发送多个请求,而每个请求都使用了Session,那么PHP Session锁的存在会导致服务器串行响应这些请求,而不是并行。这是因为在默认情况下,PHP使用文件存储Session数据。对于每一个新的Session,PHP会创建一个文件,并持续向其中写入数据。所以,每次调用session_start()方法,就会打开Session文件,并取得文件的独占锁。这样,如果服务器脚本正在处理一个请求,而客户端又发送了一个同样需要使用Session的请求,那么后一个请求会阻塞,直至前一个请求处理完成释放了文件上的独占锁。不过,这只限于来自同一个客户端的多个请求,也就是说,来自一个客户端的请求并不会阻塞另一个客户端的请求。

   如果脚本很短,这通常没有问题。但如果脚本运行时间比较长,那就可能会产生问题。在现代Web应用程序开发中,有一个非常常见的情况,就是使用AJAX技术在同一个页面内发送多个请求获取数据。如果这些请求都需要使用Session,那么第一个请求到达服务器后会取得Session锁,其它请求就必须等待,所有请求将串行处理,即使它们彼此之间并没有依赖关系。这将大大增加页面的响应时间。

 有一个方法可以避免这个问题,就是在使用完Session以后立即调用session_write_close()方法关闭Session。这样Session锁就会释放,即使当前脚本还在等在处理。需要注意的是,调用该方法后,当前脚本就不能进一步操作Session了。

  需要特别指出的是,本文所陈述的问题和观点只适用于使用session_start()方法的PHP默认Session管理模式。比如,有用户就指出,如果将应用程序托管在AWS EC2上,并正确配置DynamoDB,Session锁定问题就不会出现。

标签: php的session

本文链接地址:https://www.jiuchutong.com/biancheng/284517.html 转载请保留说明!

上一篇:PHP批量去除BOM头代码分享(php去除空格和换行符)

下一篇:Linux操作系统安装LAMP环境(linux操作系统安装包)

  • 减税性质代码及名称是什么意思
  • 契税是什么意思契税是过户费吗
  • 股东投资是所有者权益
  • 食堂临聘人员的管理、考核
  • 代开了专票,但是销售额没有超过30万怎么处理
  • 投资性房地产账面价值大于公允价值计入什么
  • 税总界定超标准小规模纳税人偷税数额
  • 发票抬头开错重开怎么处理?
  • 公司代收代付会被监控吗
  • 公司向个人转款备注备用金合法吗
  • 长期股权投资稀释
  • 出口退税申报系统汇率修改
  • 企事业单位承包承租经营者
  • 印花税已经缴纳了还需要申报
  • 什么是工会经费返还
  • 设备租赁涉及税种
  • 企业的消费税
  • 财务科目明细表格模板
  • 私募股权投资基金管理办法最新
  • 技术转让时增值税怎么算
  • 利润表的以前年度损益调整影响利润总额吗
  • 2021最新版静疗规范指南
  • 当月应计提的折旧额等于
  • win10老是错误
  • php面试算法
  • mac上安装
  • pniopcac.exe是什么进程
  • 企业预缴增值税附加税率
  • 威尔士黄水仙
  • 分公司改为子公司的所得税业务处理?
  • 企业和银行未达账项
  • df 命令执行显示不出来
  • tree命令常用参数
  • 有效的管理你的时间的重要性英文作文
  • 房租费用计入什么现金流量
  • 会计人员报销差旅费应该给谁审核呢
  • 加油票发票抬头开错了
  • 收到劳务派遣发票可以抵扣吗
  • 施工图审查费属于什么费用类别
  • python爬虫详细教程
  • 代开运输发票会不会造成重复征税
  • 差旅费包括哪些费用
  • 小规模开工程款几个点
  • 个人所得税汇算清缴
  • 没有收入如何做账
  • 固定资产赠送后怎么做凭证
  • 固定性制造费用能量差异公式
  • 减免的增值税要交所得税吗
  • 佣金付给别人公司合法吗
  • 小规模附加税优惠政策最新2023
  • 生活垃圾处理费标准
  • 税务稽查补缴增值税税的账务处理流程
  • 业务招待费可以结转下年抵扣吗
  • 银行借款一年按多少天计算
  • 个人无偿赠与不动产税收管理
  • sqlserver开启远程
  • MySQL-tpch 测试工具简要手册
  • 数据表的联接
  • mysql 5.7.11 winx64安装配置教程
  • win10系统电脑如何共享
  • 安装硬盘视频教程
  • freebsd软件安装
  • windows7快速截图
  • win7旗舰版怎么改成专业版
  • linux参数命令
  • windows7磁盘管理
  • win8.1连接wifi
  • windows开始界面
  • javascript ts
  • css hacks
  • unity移动脚本代码
  • python深入浅出
  • 阿里云服务器使用教程
  • 退发票操作流程
  • 西宁市房屋维修基金收费标准2021
  • 已经开票的房子还能退吗
  • 小规模纳税人需要进项票吗
  • 个人开具农产品普通发票
  • 税务绩效工作存在的问题
  • 个人所得税优惠政策最新2023年度
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设