我在 Rails 应用程序中使用sidekiq异步发送一些电子邮件。即使 Redis 服务器未运行,如何确保代码(作业本身)也能执行。
CommentsWorker.perform_async(@user.id, @comment.id)
在评论工作者中,我正在获取用户和评论,并发送一封电子邮件:
def perform(user_id, comment_id)
user = User.find(user_id)
comment = Comment.find(comment_id)
CommentMailer.new_comment(user, comment).deliver
end
如果我停止 Redis 服务器,我的应用程序会引发异常Redis::CannotConnectError
即使服务器停止,我仍然想使用老式同步代码发送该电子邮件。我试图rescue
摆脱那个异常,但由于某种原因它不起作用。