我有一个

PHP cron作业,运行29分钟后失败.日志中的错误(/var/log/php_errors.log)是:

[01-Mar-2012 00:32:57 UTC] PHP Fatal error: Maximum execution time of 60 seconds exceeded in /path/file.php on line 2079

触发cron的crontab条目是:

00 00 * * * /usr/bin/php /path/file.php

从我的研究中我不认为这与max_execution_time配置设置有关,因为:

>我知道它的运行时间为29:18分钟(即错误信息大约超过60秒).

>从the PHP docs开始 – 从命令行运行PHP时,默认设置为0.

问:为什么脚本会提前终止?

笔记:

该脚本非常繁重,并且运行了数千个数据库查询,但我运行的是顶级且CPU负载不高.

错误日志中的行是mysql_query调用:

$sql = "SELECT SUM(amount) FROM mytab WHERE mem = '$id' AND validto > '$now'";

$res = mysql_query($sql);

> php -v

PHP 5.3.10 (cli) (built: Feb 2 2012 17:34:38)

Copyright (c) 1997-2012 The PHP Group

Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies

with Suhosin v0.9.33, Copyright (c) 2007-2012, by SektionEins GmbH

> cat /etc/redhat-release

Red Hat Enterprise Linux Server release 5.7 (Tikanga)

更新 – 我发现为什么脚本可以运行29分钟的实时,但PHP可以退出引用执行时间低得多.

Any time spent on activity that happens outside the execution of the script such as system calls using system(), stream operations, database queries, etc. is not included when determining the maximum time that the script has been running.

(从the set_time_limit() docs开始,也在the max-execution-time docs中提到).这对我来说很重要,因为大多数脚本都是长时间运行的数据库查询和支付API调用,这些调用不会占用执行时间.

php提前终止,由于最大执行时间致命错误,PHP cron作业提前终止相关推荐

  1. 上海师范大学提前批计算机科学与技术,2020年上海师范大学提前批录取分数线公布...

    2020年大一新生即将入学,2020年提前批的录取分数线也陆续公布.下面是小编整理的2020年上海师范大学提前批的录取分数线,快来查阅吧. 2020年上海师范大学提前批录取分数线代码专业录取分 01汉 ...

  2. 使用T-SQL找出执行时间过长的作业

    有些时候,有些作业遇到问题执行时间过长,因此我写了一个脚本可以根据历史记录,找出执行时间过长的作业,在监控中就可以及时发现这些作业并尽早解决,代码如下: SELECT sj.name , sja.st ...

  3. 详解mysql数据库的启动与终止_详解MySQL数据库的启动与终止(一)

    由于MySQL服务器具有多种安装分发,而且能够运行在多种操作平台之上,因此它的启动与停止的方法也多种多样.你可以根据实际情况使用其中的一种.在你安装.升级或者维护系统时,你可能需要多次启动和终止服务器 ...

  4. 定期存款可以提前取出来吗_存的定期可以提前取吗

    定期存款未到期,可以办理提前支取.整存整取定期存款可办理部分提前支取或全部提前支取,全部或部分提前支取的部分,均按支取日挂牌公告的个人活期存款利率计付利息:未支取部分仍按原存款所定利率计息.零存整取. ...

  5. 电脑显示服务器意外终止,Win7提示Dcom Server Process Launcher服务意外终止怎么办?...

    在使用电脑的过程中,我们常常会遇到一些问题,其中有一个比较棘手,那就是电脑经常提示Dcom Server Process Launcher服务意外终止,那么当你遇到Win7提示Dcom Server ...

  6. (2022mpa提前面试时间)2022年入学各院校MBA_EMBA_MEM_MPAcc提前批面试时间汇总

    众所周知,管理类联考的录取流程主要为笔试+面试.大部分院校会根据专业的实际情况,在笔试前先进行面试,称为预面试/提前批面试.所以大部分准备考试的同学,在为笔试打基础的同时,首当其冲会先把预面试的工作做 ...

  7. 审车按月还是日期_提前三个月审车算哪天?为什么提前审车吃亏

    提前审车并不会吃亏,据相关规定显示,机动车检验在有效期满前3个月内,需要到登记地车管所申领检验合格标志.年检时间以行驶证上的日期为准,提前年检检验的有效期是不会变的. 也就是说,如果你行驶证上的有效期 ...

  8. 初次联系导师短信模板_考研的同学提前看,如何联系导师?学长经验提前收藏...

    目前我国在研究生培养上实行"导师制",由导师负责研究生个体的培养工作.对于一些专业学位,更是实行"双导师制度",即学业导师+业界导师的双重组合.由此可见,导师在 ...

  9. 终止linux进程的命令是什么,Linux命令-终止进程命令:kill

    DMSFrame 之SqlCacheDependency(二) 上篇文章介绍的是通知模式的缓存机制,这里介绍的是数据库轮循模式处理,这种模式对SQL2005以下的支持还是比较好的 引擎源码如下: // ...

最新文章

  1. pandas 按日期范围筛选数据的实现
  2. BZOJ1082: [SCOI2005]栅栏
  3. 数字图像处理之边缘检测,图像分割
  4. 叙述计算机网络拓扑结构的定义,计算机网络拓扑结构的定义
  5. cmd 进入mysql-python_MySQL在cmd和python下的常用操作
  6. Maven环境搭建(包括dependencies进度条不动解决方案)
  7. mysql各类型长度_mysql 各数据类型的大小及长度
  8. 使用Angularjs的ng-cloak指令避免页面乱码
  9. /etc/cron.deny 中关闭某一用户的 crontab
  10. matlab里调节触发角度,电机与拖动基础及MATLAB仿真陈亚爱第4章直流电机.ppt
  11. 思岚S2激光雷达3—ROS node and test application for RPLIDAR
  12. 如何通过样本数据推断其分布
  13. Unity 智能语音助手
  14. 在GIS中UTM和WGS84的区别
  15. html的window效果,HTML+CSS+JS模仿win10亮度调节效果
  16. 如何低成本减少企业知识流失?天翎知识文档系统+群晖NAS值得一试
  17. EasyExcel代码层面设置写出的Excel样式、以及拦截器策略的使用、自动列宽设置、EasyExcel默认设置详解
  18. SAP 散装物料作用及设置
  19. 【Java】插入排序、希尔排序详解
  20. NDK at ...Android\Sdk\ndk\21.1.6528147 did not have a source.properties file

热门文章

  1. 基于JAVA+SpringBoot+Mybatis+MYSQL的物流仓库后台管理系统
  2. 基于JAVA+SpringMVC+Mybatis+MYSQL的心理咨询预约系统
  3. 基于JAVA+SpringMVC+Mybatis+MYSQL的高校大学生社团招新管理系统
  4. c语言有较强的网络操作功能吗,《对于C语言的理解》--06级网络班 刘丽君
  5. 微软官方Microsoft文档地址
  6. 雷林鹏分享:MySQL ALTER命令
  7. 0923-网络 文件上传
  8. 双启利器EasyBCD帮你找回消失了的Windows
  9. 原来,是我的眼光出了错
  10. 十大经典排序算法2(Python版本)