安排以四种不同计划运行的任务的最佳方式(Laravel/PHP)

安排以四种不同计划运行的任务的最佳方式(Laravel/PHP),php,laravel,cron,Php,Laravel,Cron,在Laravel应用程序中,我们有一个任务需要为某些用户每小时运行一次(例如),为其他用户每两小时运行一次,为其他用户每4小时运行一次,为其他所有用户每六小时运行一次 虽然我们可以创建四个不同的命令,并使用内置的调度程序在相关的时间间隔通过cron运行它们,但这对我来说似乎有些笨拙 是否有一种更优雅、更简洁的方式,可以在一个命令和一个命令中实现预期的结果 我唯一的想法是,每小时运行一次任务,然后让命令查看它运行的时间,每次运行时,我不确定它的可靠性。因此,它会自动将所有每小时用户包括在每次要处理

在Laravel应用程序中,我们有一个任务需要为某些用户每小时运行一次(例如),为其他用户每两小时运行一次,为其他用户每4小时运行一次,为其他所有用户每六小时运行一次

虽然我们可以创建四个不同的命令,并使用内置的调度程序在相关的时间间隔通过cron运行它们,但这对我来说似乎有些笨拙

是否有一种更优雅、更简洁的方式,可以在一个命令和一个命令中实现预期的结果

我唯一的想法是,每小时运行一次任务,然后让命令查看它运行的时间,每次运行时,我不确定它的可靠性。因此,它会自动将所有每小时用户包括在每次要处理的用户列表中,但如果小时数为0、2、4、6等,那么也包括两个每小时用户,如果是0、4、8,也包括四个每小时用户,等等-尽管如此,这似乎有点不雅观


有什么想法吗?

您只需要一个每小时运行一次的Cron。在数据库中创建额外的列,并指定需要每小时运行一次的用户和需要每两小时运行一次的用户,等等。更新上次运行的时间,并在运行cron时选择它(这需要大量运行,但您得到的要点是:P)您只需要一个每小时运行一次的cron。在数据库中创建额外的列,并指定需要每小时运行一次的用户和需要每两小时运行一次的用户,等等。更新上次运行的时间,并在运行cron时选择它(这是一个很大的运行过程,但你得到了要点:P)