【发布时间】:2017-06-08 06:25:22
【问题描述】:
在我的控制器方法中,
一旦所有付款细节都经过格式验证,
我们开始付款。
现在,在启动此(以及其他所有)付款时,我需要在 15 分钟内安排一次控制器调用,并使用参数(支付网关令牌)检查付款是否已完成..否则将其关闭。
现在,我可以每分钟使用一次 cron 来检查 15 分钟前的付款。但是运行一次预定的调用会比每分钟无休止地运行一个 cron 来减少系统的工作量和压力。
我探索了 laravel 中的选项,例如排队或任务调度。但都不是一次性调用(任务调度)或x分钟内排队。
出于给定要求的类似理由,我是否缺少某些东西或 laravel 中的某些功能?
【问题讨论】:
-
每隔 15 分钟安排一次任务有什么问题?
-
那行不通..在你的情况下......假设计划任务在上午 10 点运行,我在上午 10:10 支付了 P1。现在下一个计划任务在上午 10:15 运行,但无法选择 P1(因为 P1 的 15 分钟持续时间尚未过去)。现在 10:30 的下一个计划任务将运行并选择 P1。从 P1 进入启动状态将是 20 分钟。没有解决目的
-
付款完成后不能调用你的函数,还请粘贴一些代码
-
所以,我认为你最好自定义你的流程而不是任务调度
-
我需要调用该函数...但在“X”分钟之后。我不想马上叫它。我有我的方法和代码。但我需要想办法在 15 分钟后调用它/安排它。
标签: php laravel scheduled-tasks laravel-5.4