当前位置: 首页 > 面试题库 >

使用CLI每秒运行一次PHP脚本

齐元章
2023-03-14
问题内容

我有运行带有并行PLESK面板的Cent OS的专用服务器。我需要每秒运行一个PHP脚本来更新数据库。这些是时间上的替代方法,它需要每秒进行更新。

我可以使用URL找到我的脚本http://www.somesite.com/phpfile.php?key=123

每秒可以在本地执行该文件吗?喜欢phpfile.php吗?

更新:

自我添加此问题以来已经过了几个月。我最终使用了以下代码:

#!/user/bin/php
<?php
$start = microtime(true);
set_time_limit(60);
for ($i = 0; $i < 59; ++$i) {
    doMyThings();
    time_sleep_until($start + $i + 1);
}
?>

我的cronjob设置为每分钟。我已经在测试环境中运行了一段时间,它运行良好。这真的非常快,而且我看不到CPU和内存使用的增加。


问题答案:

您实际上可以在PHP中完成。编写一个程序,该程序将运行59秒钟,每秒检查一次,然后终止。与运行cron作业结合这 每分钟和变戏法似的过程

一种方法是:

set_time_limit(60);
for ($i = 0; $i < 59; ++$i) {
    doMyThings();
    sleep(1);
}

您唯一需要注意的是doMyThings()函数的运行时间。即使那只是一秒钟的时间,但超过60次迭代,这加起来可能会引起一些问题。如果您运行的PHP> =
5.1(或Windows上的> =
5.3),则可以使用time_sleep_until()

$start = microtime(true);
set_time_limit(60);
for ($i = 0; $i < 59; ++$i) {
    doMyThings();
    time_sleep_until($start + $i + 1);
}


 类似资料:
  • 我有一个程序,可以发送和接收短信,并自动处理按摩。 出于其他原因,我不需要使用JavaScript或HTML来刷新页面,这样我就可以发送消息,所以对于程序发送回消息,我需要使用。bat或任何窗口自动化系统 我的问题是,如何使用.bat每10秒运行一次发送.php文件

  • 我有一个函数,使API调用服务器和更新用户界面与新数据。我想使,使每30秒我使API调用不同的url每次?这些API调用应该是不间断的,只要应用程序正在运行。

  • 问题内容: 抱歉,我有点菜鸟,我只想知道我如何让此javascript每秒钟运行一次? 源代码: 问题答案: 使用setInterval()每x毫秒运行一段代码。 您可以将要每秒运行的代码包装到一个名为的函数中。 因此它将是: 要停止它,可以运行:

  • 问题内容: 我有一个ajax调用到一个php文件。我正在收到结果。现在,我正在研究是否有可能使ajax请求每1秒自动执行一次。我将结果发布到名为的输入字段中。如何每三秒钟执行一次ajax调用而不必调用该函数? 问题答案: 您可能要考虑的是服务器发送事件(SSE) 这是一种HTML5技术,JavaScript可以通过该技术“ 长期轮询 ”服务器端点(您的PHP文件)以查看是否发生了任何更改。长轮询基

  • 我想每10秒执行一段代码。我在这个论坛上找到了一个例子,但我的实现有一些问题。 我得到这个错误,指向:

  • 在我问之前,Cron作业和任务调度程序将是我的最后选择,这个脚本将在Windows和Linux中使用,我更喜欢有一个编码的方法来完成这个任务,而不是把它留给最终用户来完成。 有没有Python的库可以用来安排任务?我需要每小时运行一次函数,但是,随着时间的推移,如果我每小时运行一次脚本并使用. chat,“每小时一次”将在不同的时间运行由于执行/运行脚本和/或函数固有的延迟,一小时与前一天不同。