失败时 Sidekiq 后台作业回滚

Sidekiq background job rollback when fail

我想知道 sidekiq 后台作业是否会在作业无法完成时回滚其数据库?即机器死机或类似的东西。

我正在使用 rails 4.2.1,sidekiq 4.0.1

Sidekiq 并不真正处理交易,但 Rails 可以。因此,如果您有多个语句,则应将它们包装在一个事务中,即:

ActiveRecord::Base.transaction do
  User.update(amount: 100)
  Bank.update(amount: 0)
end

然后,如果出现问题,这些更改将被回滚。