如何使用 activeMailer 和禁用重试deliver_later
?
我最近遇到了一个问题,我的一个邮件方法由于视图中的语法错误而静默失败。我们deliver_later
用来发送消息
当它最终被发现并修复时,所有失败的旧消息都被重新尝试然后传递。这些是时间敏感消息,不应重试。
我似乎找不到任何方法来做类似的事情.deliver_later(retry: false)
会使用deliver_now
解决这个问题吗?
我使用delayed_job 作为我的消息队列。
如何使用 activeMailer 和禁用重试deliver_later
?
我最近遇到了一个问题,我的一个邮件方法由于视图中的语法错误而静默失败。我们deliver_later
用来发送消息
当它最终被发现并修复时,所有失败的旧消息都被重新尝试然后传递。这些是时间敏感消息,不应重试。
我似乎找不到任何方法来做类似的事情.deliver_later(retry: false)
会使用deliver_now
解决这个问题吗?
我使用delayed_job 作为我的消息队列。
ActiveJob 不会触及适配器的重试设置(https://github.com/rails/rails/blob/master/activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb)。Delayed::Worker.max_attempts = 4
如果您完全禁用 DJ ( )中的重试机制,您可以获得的唯一方法