如何解决Sidekiq 将至少执行一次你的工作,而不是一次
我看到 Sidekiq best practices docs 提到了
请记住,Sidekiq 将至少执行一次您的工作,而不是 正好一次。
谁能用例子解释一下这意味着什么?
解决方法
此paragraph开头对at least once
的解释。
例如,使用错误重试功能,您的作业可能会处理一半,抛出错误,然后一遍又一遍地重新执行,直到成功完成。
def perform
$counter += 1
raise RuntimeError,'Run again'
end
如上所示,我们在成功完成之前引发错误,此作业将重试,直到尝试次数用完为止。作业每运行一次,$counter
就会增加 1。
使您的工作具有幂等性和事务性,以避免不一致。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。