目前我有一个perl脚本,它在我的服务器上永远运行,检查SQS以获取要计算的数据.这个脚本已经运行了大约6个月,没有任何问题.
所以,现在我想切换到PHP的CLI,并让脚本永远循环.主要是因为我对PHP更熟悉.
基本上,
$i="forever";
while($i==="forever"){
doSomething();
sleep(10);
}
Run Code Online (Sandbox Code Playgroud)
该脚本将执行shell_exec("/ shell_script.sh"); 这可能需要2个小时才能完成.这会触发最大执行时间或类似时间吗?
这样"好"吗?如果没有,有哪些替代方案?
您需要确保将脚本的最大执行时间设置为零,以便不会施加时间限制.你可以从PHP文件中执行此操作,
set_time_limit(0);
Run Code Online (Sandbox Code Playgroud)
或者您可以在php.ini文件中进行设置.(有关更多信息,请参阅set_time_limit上的PHP手册).除此之外,你的方法应该工作正常.
但是,没有必要设置变量并检查它以便永远循环,
$i="forever";
while($i==="forever")
Run Code Online (Sandbox Code Playgroud)
你可以简单地做while(true)或while(1).
就个人而言,我会使用Python或Perl来执行此类任务.PHP实际上更像是一种用于编写网站和服务的特定于域的语言.
| 归档时间: |
|
| 查看次数: |
2932 次 |
| 最近记录: |