草庐IT

php - 为什么连续运行 PHP 脚本如此糟糕?

我有一张map。在这张map上,我想显示从几个表中收集的实时数据,其中一些表的行数惊人。不用说,获取此信息需要很长的时间。此外,还涉及ping。根据离线或远离服务器的情况,此数据的收集可能需要1到10分钟不等。我希望map快速且响应迅速,因此我决定向我的数据库中添加一个新表,其中仅包含map所需的数据。这意味着我需要一个后台进程来不断更新我的新表中的信息。Cron作业当然是可能的,但我希望在前一个间隔完成后立即刷新数据。如果离线IP地址的数量突然激增并且循环运行时间比Cron作业的间隔时间长怎么办?我自己的解决方案是在PHP中创建一个由命令行运行的无限循环。这个循环会将map的数据刷新

php - 如何在 PHP 中获取本地系统时间?

我正在写一个PHP系统,我需要获取系统时间。不是GMT时间或特定于时区的时间,而是CRON系统使用的相同系统时间。我有一个每天午夜运行的CRON作业,我想在网页上显示它再次运行需要多长时间。例如:现在我的系统时钟是下午6点。我运行代码:$timeLeftUntilMidnight=date("H:i",strtotime("tomorrow")-strtotime("now"));然而,结果是“3:00”而不是“6:00”。如果我跑date("H:i",strtotime("tomorrow"));它返回0:00,这是正确的。但是如果我跑date("H:i",strtotime("no

php - 通过 cron 运行 php 脚本,如何记录任何输出?

大家早上好我有一个我一直在测试的php脚本,当我从命令行调用它时似乎运行良好。我现在想通过cron自动执行它,我怎样才能将我放入文件中的输出作为检查点放入日志文件中?例如,我在脚本中有一些简单的echo命令,我希望输出出现在现有日志文件中(以便它自动轮换等)谢谢,格雷格 最佳答案 要运行的Cron命令:/path/to/php-f/path/to/script.php>>/path/to/logfile.txt 关于php-通过cron运行php脚本,如何记录任何输出?,我们在Stack

php - 限制 PHP 脚本的建议/技巧

我有一个定期(每小时)运行脚本的计划任务。该脚本与数据库和文件系统进行大量交互,通常需要几分钟才能运行。问题是,服务器的cpu使用率在脚本运行时出现峰值并减慢了正常操作。有没有一种方法可以限制此过程,使其花费更长的时间但不会消耗那么多资源?我查看了PHP的不同配置选项,但似乎没有适合我需要的配置选项。将php.ini中的memory_limit设置得较低会导致我的数据对象很容易溢出。我看过类似的帖子,其中有人建议在脚本的某些点使用sleep()但这并不能阻止脚本对服务器产生峰值。最佳解决方案是通过某种方式告诉Lamp(在本例中为Wamp)堆栈仅使用10%的最大CPU利用率。我根本不关心

php - Cron sessionclean 错误 : find: `/proc/xxxxx/fd' : No such file or directory

PHP升级后,我开始每天多次收到以下cron错误:find:`/proc/xxxxx/fd':Nosuchfileordirectory它来自PHPsessioncleancron作业:[-x/usr/lib/php5/sessionclean]&&/usr/lib/php5/sessionclean有什么想法吗? 最佳答案 现在有一个关于此的Debian错误报告(和fixed)。它提到了稳定版的发布:Inthenextsecurityupload,e.g.roughlytwoweeksafter5.6.23isreleased,u

php - cron 作业很昂贵吗?或者他们基本上是访问?

一段时间以来,我一直在寻找这个问题的答案,但我找到了好坏参半的答案。cron作业是否是繁重且昂贵的过程,会消耗大量资源?还是他们基本上点击了那个页面(不管cron触发它时执行的脚本是什么)我打算为多个站点使用多个cron作业。假设我有3个不同的cron作业,它们每分钟会访问10个站点的某些页面。有没有人像浏览器点击一样以触发方式拥有10或100个这样的cron作业(-wget...>/dev/null2>&1)?如果这样做,您是否会遇到额外的负载?进一步说明;正如您可能知道的那样,如果在预定事件发生时没有人访问WordPress站点,WP-cron事件不会发生,直到有人出现并触发它。我

php - 循环 PHP 脚本

我有一个PHP脚本可以检查目录并删除任何在15秒内未修改的文件(用于游戏)。我的问题是如何让这个脚本一直运行。我设置了一个每10分钟运行一次的cron作业,然后在PHP脚本中我有一个带有sleep(10)的无限循环。我的想法是它会每10秒运行一次代码,如果脚本停止,cron作业最终会重新启动它。但是,脚本启动后,它会运行大约3个循环(30秒)然后停止。我听说PHP每次加载文件时只能获得这么多内存。如何让这个PHP脚本无限循环?也许有一些方法可以调用自己 最佳答案 您可以运行一个父php进程,以一定的间隔fork一个客户端。如果您对将

php - 明天前一分钟的 cron 作业

我将按计划通过curl触发对PHP文件的调用。我正在考虑让脚本每隔23:59:59执行一次,或者只是在明天开始前一分钟执行一次。有什么最好的方法吗?仍然对cron设置感到困惑。我需要确保在第二天之前的整整一秒运行。 最佳答案 Minutes[0-59]|Hours[0-23]||Days[1-31]|||Months[1-12]||||DaysoftheWeek[Numeric,0-6]|||||*****home/path/to/command/the_command.sh5923***home/path/to/command/t

php - cron 作业命令中的权限被拒绝

关闭。这个问题是off-topic.它目前不接受答案。想改进这个问题吗?Updatethequestion所以它是on-topic用于堆栈溢出。关闭10年前。Improvethisquestion我正在使用命令命令添加一个新的cronjob:/bin/sh:/home/gbtusyll/public_html/run.php但是命令没有运行,我收到一封邮件说:/bin/sh:/home/gbtusyll/public_html/run.php:Permissiondenied问题是什么?

php - 使用 Webmin 设置一个 cron 作业

我正在尝试使用Webmin设置一个每5分钟运行一次的Cron作业。它需要以.php文件为目标并运行该文件中的php脚本。当我在“命令”字段中输入文件路径时,它不起作用。我只是想知道我做错了什么,以及我需要Cron作业运行的文件路径放在哪里。谢谢! 最佳答案 系统->计划的Cron作业点击创建一个新的预定cron作业。在命令框中输入/usr/bin/php-q/var/www/path/to/your_php_script.php单击“在下面选择的时间和日期..”单选按钮点击Minutes部分下的“Selected..”选择0、5、1