gpt4 book ai didi

laravel - 如何在 Laravel 或 Redis 中取消排队的作业

转载 作者:IT王子 更新时间:2023-10-29 05:55:19 24 4
gpt4 key购买 nike

我如何浏览我的 Redis 队列中所有待处理的作业,以便我可以取消具有特定 emailAddress-sendTime 对的 Mailable?

我正在使用 Laravel 5.5 并且有一个我正在成功使用的 Mailable,如下所示:

$sendTime = Carbon::now()->addHours(3);
Mail::to($emailAddress)
->bcc([config('mail.supportTeam.address'), config('mail.main.address')])
->later($sendTime, new MyCustomMailable($subject, $dataForMailView));

当这段代码运行时,一个作业被添加到我的 Redis 队列中。

我已经阅读了 Laravel docs但仍然感到困惑。

如何取消 Mailable(阻止它发送)?

我喜欢在我的 Laravel 应用程序中编写一个网页,这对我来说很容易。

或者也许已经有一些工具可以让这一切变得简单(也许是 FastoRedis?)?在那种情况下,有关如何以这种方式实现此目标的说明也会非常有帮助。谢谢!

更新:

我尝试过使用 FastoRedis 浏览 Redis 队列,但是我不知道如何删除一个 Mailable,比如红色箭头指向这里: enter image description here

更新:

看综合answer I provided below .

最佳答案

让它更简单。

不要发送带有后一个选项的电子邮件。您必须使用 later 选项发送一个 Job,这个 Job 将负责发送电子邮件。

在此作业中,在发送电子邮件之前,检查 emailAddress-sendTime 对。如果正确,则发送电子邮件,如果不正确,则返回 true,电子邮件将不会发送,作业将完成。

关于laravel - 如何在 Laravel 或 Redis 中取消排队的作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48255735/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com