假设我有这个sidekiq工人:
def perform post_id
post = Post.find post_id
post.do_something
end
如果找不到帖子并引发例外,会发生什么?
sidekiq会再试一次吗?
什么是更好的设计,以便sidekiq不使用sidekiq_options再试一次:retry =>假
谢谢!
答案 0 :(得分:1)
如果您不想引发异常,请改用find_by_id
,如果记录不存在,则返回nil
,而不是引发异常。但请务必检查nil
:
def perform post_id
post = Post.find_by_id post_id
post.do_something if post
end