Sidekiq worker的参数应该是作者根据此Wiki提供的简单数据类型(https://github.com/mperham/sidekiq/wiki/Best-Practices)
ActiveJob的参数可以是复杂的对象,这要归功于全局ID(https://edgeguides.rubyonrails.org/active_job_basics.html#globalid)
ActiveJob后端可以配置为使用Sidekiq。
那么,当我将复杂对象传递给具有Sidekiq后端的ActiveJob工作者时,在幕后会发生什么?我认为Sidekiq这次不会处理失败,原因是“这次将无法在转储/装入往返过程中正常生存”。
您可以使用#to_global_id
找到模型的全局ID: