Sam*_*Sam 5 php cron scheduled-tasks
我正在创建一个 Web 应用程序,用户可以在其中指定时间和日期来运行 2 个计划任务(一个在开始日期,一个在结束日期)。由于这些只运行一次,我不知道 cron 作业是否合适。
我想到的另一个选择是将所有任务时间保存到数据库中,并每小时运行一次 cron 作业以检查是否$usertime == NOW()
等。但我担心作业重叠等。
想法?
附加:许多用户可以创建许多任务,每个任务运行 2 个脚本。
我会这样做,将设置保存在数据库中,并在需要时检查任务是否应该启动。
您可以每分钟运行一次检查/启动 cronjob。只要确保检查代码不是太重(快速退出)即可。每分钟执行几行的数据库查询应该不成问题。
如果“任务”确实很重,您应该考虑使用守护进程而不是调用 php.ini 的 cronjob。这是一个很好且易于阅读的介绍:Create daemons in PHP
编辑:我想当然地认为,即使任务只运行“每个一次”,您也有多个用户,它们与“每个一次”的比例为 1:1,因此每个用户都有作业。如果没有,at
(正如评论所说)看起来值得进行实验。