繁体   English   中英

计划PHP脚本的最佳做法

[英]Best practices in scheduling PHP scripts

对于一个项目,我需要安排几个PHP脚本。 有些脚本有点复杂(例如,发送邮件,执行数据库工作,使用多个外部Web服务,使用外部文件和类等)。 问题在于这些脚本也需要从浏览器中调用,并且它们确实使用$_SERVER数组中的某些变量(包括HTTP_HOST )。
有没有一种方法可以使这些脚本从命令行运行,还是必须将它们重写为“兼容命令行”? 还是最好使用命令行中指定不可用变量的参数?

我们有一台运行Windows Server 2008的服务器。

您应该提取脚本的一部分,这是浏览器和命令行环境所共有的。 然后,您可以将其包含在两个脚本中,其中一个将使用$ _SERVER,另一个将使用命令行参数变量来运行公用部分。

计划PHP脚本的最佳做法?

1)不要。 这是一个滑坡-您最终花费太多时间试图将脚本组织到可用的时隙中,最终您的系统会根据已运行和未运行的作业更改状态。 确实,您希望直接响应用户请求触发所有处理。 (但这并不意味着它们必须与用户请求同步运行,并在与用户请求相同的执行线程中运行)。

2)不要在MSWindows上执行此操作-Microsoft操作系统可以提供GUI,但没有其他操作系统上可用的一系列用于作业管理和自动化的工具

我已经看到很多情况下,人们只是因为代码的性能糟透了,才将东西推入预定的批处理中。 在许多情况下,更好的解决方案是解决性能问题。

话虽如此,由于您已经陷入困境,可以,您可以将所有代码复制到命令行和Web版本中-或者您可以下载wgetcURL并安排这些程序来调用您的URL,这些URL通过GET或开机自检

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM