位置: 编程技术 - 正文

简单谈谈PHP中的Reload操作(简述php的概念和特点)

编辑:rootadmin

推荐整理分享简单谈谈PHP中的Reload操作(简述php的概念和特点),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:简单谈谈php中的爱情观,简述php,php的理解,简述php,简单谈谈php中的安全性,简单谈谈php中的爱情观,简单谈谈php中的安全性,简单谈谈php中的数学思想,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

有很多前辈告诫过我们,reload 能保证整个过程的平滑性,所谓平滑性指的是在 reload 的过程中,旧的进程在处理完当前请求前不会提前终止。很多年来,我从来没有质疑过这种说法,直到有一天,当我 reload 的时候,出现了 错误,让我不得不重新思考。

如何重现问题呢?让我们写一个简单的脚本来模拟:

此时用浏览器浏览这个网址,接着立刻执行 reload 操作,就能看到 错误了。

简单谈谈PHP中的Reload操作(简述php的概念和特点)

难道 PHP 这么弱?连 reload 基本的平滑性都无法保证?答案当然是否定的,实际上通过 process_control_timeout 参数可以实现我们的目标。可惜这个参数缺省是 0,也就是不生效,本文把它设置成 s。重新执行之前的实验步骤,这一次正常输出了结果。不过如果你多做几次实验的话,可能会发现当我们 reload 的时候,sleep 立刻就结束了,这是因为 sleep 收到 reload 发出的信号后直接返回了,下面让我们再改写一下脚本:

重新执行之前的实验步骤,你会发现 错误又出现了。这是因为 reload 虽然让第一个 sleep 立刻结束了,但是第二个 sleep 还是有效的,而且超过了 process_control_timeout 的时间限制。如果我们把 process_control_timeout 设置为 s,那么就又好了。

如此说来,我们只要给 process_control_timeout 设置一个合理的数值就能保证 reload 操作的平滑性,不过到底多大是合理的数值呢?太小的话可能起不到作用,太大的话会不会有副作用?让我们带着疑问重复上一次实验,不过这次我们再加一个监控:

此监控的目的是为了观察 reload 过程中 PHP-FPM 进程数的变化情况,为了让效果更明显些,建议把 PHP-FPM 的启动方式改成 static 模式,同时进程数不要太多。

当我们重复上一次实验的时候,结果发现除了正在执行请求的进程,其它进程直接就被干掉了,而新进程又没有立刻启动,就这样一直卡到最后一个旧进程执行完后新进程才完成启动过程。在此期间,如果有别的请求进来,那么无疑它无法立刻得到响应。

根据我们的实验可以得出结论:缺省情况下,PHP-FPM 无法保证平滑的执行 reload 操作,必须设置一个合理的 process_control_timeout 才行,同时需要注意的是其值不能设置的过大,否则系统可能出现更为严重的请求堵塞问题。

总结

标签: 简述php的概念和特点

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

上一篇:解决微信授权回调页面域名只能设置一个的问题(解决微信授权回复的方法)

下一篇:php中引用&的用法分析【变量引用,函数引用,对象引用】(php引用文件的方法)

  • 个税申报表中本期收入怎么填
  • 股权转让的相关文件有哪些
  • 税控盘及维护费的会计分录
  • 库存现金是负数怎么调
  • 发票预付款充值卡是否报销
  • 专用发票抵扣联丢失还能抵扣吗
  • 员工报销公司是哪个部门
  • 增值税发票抵扣多少个点
  • 股东出资方式和比例是否合法?并说明理由
  • 税控服务费能抵扣吗
  • 管理费用月末怎么结账
  • 进口材料支付的关税
  • 业务招待费进项税额需要转出吗
  • 差旅补贴需要缴纳个税吗
  • 实务操作中的税会差异有哪些?
  • 车辆租赁的增值税率
  • 企业自行建造的固定资产
  • 不计提盈余公积可以分红吗
  • 小规模免增值税印花税用交吗
  • 公司办公楼转让缴纳增值税的依据
  • 用友t3每月都要结账吗
  • 实收资本未到位借款利息可以税前扣除吗
  • 预缴企业所得税是含税数还是不含税
  • 营业执照五证合一图片
  • 先收到发票后到货分录
  • 工会经费该怎么交
  • 穿越火线刷枪视频教程
  • 结转本月各项损益
  • 会计科目发出商品
  • 汇算清缴租赁费包括物业管理吗
  • php serialize()与unserialize() 不完全研究
  • windows7旗舰版最新版本
  • 企业收到海河工厂发运的乙材料,并验收入库
  • 开的发票超过了限额会怎样,怎么办?
  • 数据库管理框架
  • 红字发票进项转出当期
  • vue在项目中怎么用的
  • 前端css要掌握到什么程度
  • springboot aop切面
  • makefile 编译选项
  • 权益法下股权投资转让
  • 公司账户转私账违法吗
  • 纳税人提供技术开发服务
  • 车辆购置税是税前还是税后
  • 图文详解汽车坐垫安装方法
  • System.Data.SQLite 数据库详细介绍
  • 季报利润总额怎么算
  • 印花税申报时间填错造成逾期怎么办
  • 出口合同的流程
  • 如何做应收账款分析
  • 境内企业借外债,不还会怎么样
  • 只有发票没有银行回单怎么做账
  • 营改增后,建筑行业与供应商签合同才怎样签没风险?
  • 上月未记账
  • 互联网企业招商手册
  • 行政事业单位负责人应当对本单位内部控制
  • 商品流通企业如何控成本
  • sql server 数据库日志不可用
  • mysql8.0存储过程
  • linux系统中cron命令
  • windows7怎么打符号
  • 为什么好不容易瘦了两斤,两天吃好了又上来了?
  • 苹果的mac怎么查
  • rsmsink.exe - rsmsink是什么进程 有何作用
  • schedulerv2.exe - schedulerv2是什么进程 有什么用
  • windows8ip地址怎么设置
  • cocos2dx4.0教程
  • js array数组
  • js用什么编写
  • android 图片
  • Android:wpa_supplicant决定选择哪种驱动
  • shell的实现
  • bat读取文件内所有内容
  • js cookie用法
  • linux中fork()函数详解(原创!!实例讲解)
  • shell 单引号中引用变量
  • 全面解析皮炎
  • 个体工商户税务申报怎么操作流程
  • 没有代理记账资格的公司能代理记账吗
  • 武汉代账公司一般怎么收费
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设