我有一个RoR应用程序,其中一些模型需要对远程API进行配置。但是在其中两个中,我需要做很多配置HTTP请求,我使用ActiveJob来完成这项任务。
问题是我需要维护这些HTTP请求的创建顺序,但ActiveJob却没有。
如何按特定顺序使用ActiveJob处理许多异步任务?
答案 0 :(得分:1)
一种方法是将这些作业放在特殊队列
上class MyHttpJob < ApplicationJob
queue_as :serial_creation
#....
end
该队列中只有一名工人。没有并发=&gt;自动序列化。当然,这具有严重的性能限制。但是,如果你的一个工人能够处理流量,那么这是一个很好的方法。