目前我正在尝试构建一个好的调度程序系统作为在我的系统上设置和编辑 cron 作业的界面。我的系统是在 Linux 服务器上使用 Zend 框架 1.11.11 构建的。
我有 2 个主要问题希望得到您的建议:
问题1:应用程序本身的设置
我有两种方法来运行 cron 作业:
第一种方法是创建一个文件夹
scripts
并在其中创建一个公共引导文件,我将只加载我需要的资源。然后对于每个任务,我将创建一个单独的脚本,并在每个脚本中包含引导文件。最后,我将在 crontab 文件中为这些脚本中的每一个添加一个 cron 任务,该任务将类似于***** php /path/to/scripts/folder/cronScript_1.php
.其次,将 cron 作业视为普通请求(没有特殊的引导程序)。在 crontab 文件中为这些脚本中的每一个添加一个 cron 任务,该任务将类似于
***** curl http://www.mydomain.com/module/controller/action
.
问题2:应用程序的接口
添加 cron 作业也可以通过 2 种方式完成:
对于每个任务,crontab 文件中都会有一个条目。当我想添加新任务时,我必须通过 cPanel 或任何其他方式来编辑 crontab(可能不可用)。
将任务存储在数据库中并提供与数据库交互的 UI(网格以添加少量任务和配置)。之后,在每分钟运行的 crontab 文件中只写入 1 个 cron 作业。该作业将从数据库中选择所有作业并检查是否有现在应该运行的作业(将存储任务的时间并与服务器的当前时间进行比较)。
您认为哪种方式更好地实施每个部分?有没有现成的解决方案,一般来说更好?
笔记
我遇到Quartz会寻找现成的解决方案。这是我正在寻找的东西还是完全不同的东西?
谢谢。