位置: 编程技术 - 正文

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操作系统安装包)

  • 直接人工费用属于固定成本吗
  • 中标服务费可否开发票
  • 总分机构企业所得税汇算清缴
  • 应付账款不用付怎么处理
  • 保险收入如何做账务处理?
  • 国有企业取得的土地收储款是否要上缴财政
  • 别人垫付的医药费,可以报销吗
  • 股东拿不到钱
  • 对供应商罚款通知单怎么写
  • 不开发票的收入怎么处理?
  • 支付短期借款计入什么科目
  • 预付材料款会计分录
  • 生产企业出口退税流程
  • 建筑企业与建设局的关系
  • 审计费用收取标准的2020
  • 金融保险服务业
  • 印花税按主营业务成本计算吗
  • 过路费发票可以抵扣增值税吗
  • 给员工发放购物卡交个税吗
  • 企业所得税利润总额怎么算
  • 投资股权转让需要注意什么?
  • 出口关税的完税条件
  • 腾讯手游助手如何退出登录
  • 结转工程成本属于什么会计科目
  • php
  • 收到税局退回增值税
  • 口腔发炎怎么办最快最有效的方法
  • vue项目中使用opencv
  • php和mysql的结合是目前web开发中的黄金组合
  • 往来指哪些科目
  • vue ng
  • 进项税大于销项税,不用缴纳增值税
  • 顺流交易合并抵消
  • php获取给定日期函数
  • 前端播放视频的插件
  • 新准则土地使用权计入固定资产还是无形资产
  • acc字幕文件怎么转换srt字幕
  • js防抖函数和节流函数
  • php递归函数详解
  • 旅游业哪些发票需要交税
  • 售后租回怎么理解
  • ps怎么把人p掉背景还原
  • 交易性金融资产的入账价值
  • 结转损益的凭证需要打印吗
  • 预存5000送2000什么套路
  • 无效发票进项税额抵扣
  • 企业电子发票申请流程2023版
  • 网银转账往来款怎么做账
  • 科研项目财政拨款怎么算
  • 发票验旧验的是哪些发票
  • sql server 2008怎么使用sql语句
  • 个人股东和法人股东分红纳税
  • 注册资本印花税2023年新规定
  • 残疾人就业保障金
  • 现金日记账采用哪一种账簿的形式
  • 个体户怎么能享受生育险
  • 股权转让溢价
  • 销售商品返现怎么做
  • 财产租赁合同印花税计税依据
  • 未分配利润转增股本法人股东要交税吗
  • 发票章盖得不清晰怎么办
  • 单位购入车辆能抵扣吗
  • 坏账准备的会计核算
  • 企业经营情况怎么写版本
  • mysql中索引有什么用
  • mysql 元组
  • win10预览版和正式版区别
  • ubuntu 怎么用
  • w10系统分辨率
  • win7连接xp共享
  • win8 embedded
  • nodejs视频教程大集合
  • ajax按顺序执行
  • jQuery实现表格文本框淡入更改值后淡出效果
  • python程序设计的方法
  • 广东国税局官网网站
  • 建筑行业增值税税收优惠政策
  • 百旺税控盘口令是多少
  • 如何查询甘肃省志愿录取状态
  • 浙江欧派和广东欧派哪个好
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设