У меня есть настройка двух рабочих Sidekiq в приложении Rails 4.2, где первая выполняет несколько заданий, а другая отправляет электронную почту, когда все эти задания были завершены. Эти два соединены в этом superworker:Функция вызова при завершении суперзбука sidekiq-superworker
Superworker.define(:PrioritySuperworker, :object_class, :object_id, :priority_ids) do
batch priority_ids: :priority_id do
PriorityMailsWorker :object_class, :object_id, :priority_id
end
SendConfirmationWorker :object_class, :object_id
end
Я хотел бы выполнить другую операцию в модели, где называется этот superworker, но только если SuperJob была завершена (что означает, что все подзадачи в нем также были завершены). Я видел, что Sidekiq Pro может запустить обратный вызов после завершения пакета, но я не могу позволить себе использовать его, так как я работаю на платформе с открытым исходным кодом. Можно ли это сделать с помощью Superworker или любого другого бесплатного инструмента?
Ну, это в основном решает эту проблему. Мне нужен код приложения, а не другой «Рабочий», который будет вызван, но ОК, я создам для этого выделенный «Рабочий». – mudasobwa