1

我有一个非常慢的脚本,需要经常执行(每分钟大约 30 次),因此用户无法执行它并且 cron 作业最多每分钟运行一次。

那么,有没有办法(使用 PHP)让服务器而不是用户工作?

4

1 回答 1

2

这很简单:使用标志文件

无需用户交互即可运行的脚本(可能由 cron 或 shell 启动,包括 PHP shell 执行):

<?php
while (true) {
  while (file_exists('/path/to/flagfile')) sleep(1); //Can even use microsleep
  include ('/path/to/worker/script');
  touch('/path/to/flagfile');
}
?>

触发它的脚本(通过用户交互从网络服务器开始)

<?php
@unlink('/path/to/flagfile');
echo "Processing triggered!";
?>
于 2013-04-09T14:07:01.097 回答