У меня есть задачи восстановления, которые нужно отложить после сбоя с экспоненциальной отсрочкой.Но иногда экспоненциальный откат должен быть сброшен - если задание продвигается к своей конечной цели, задержка должна быть сброшена до очень короткой, но если она застряла, не получится, она должна продолжать ждать.Таким образом, задание будет выполнено, и в случае его сбоя будут два разных режима отказа.В одном режиме сбоя задание следует повторить очень скоро, но затем начать откат.В другом режиме сбоя задание должно быть отложено дольше (скажем, в 2 раза), чем задержка перед предыдущей попыткой.
Кажется, что retry_criteria_check
должно быть в состоянии сделать это, но я не уверенкак интегрировать это с Resque::Plugins::ExponentialBackoff
.Я предполагаю, что сообщу о различных режимах сбоев, выдавая разные исключения, если кто-то не может предложить лучший способ.