Давайте посмотрим, смогу ли я объяснить эту проблему достаточно структурированной.
Я запустил веб-сервис, который обрабатывает отправку электронной почты асинхронно, используя RabbitMQ и ruby lib с именем Minion . В некоторых моделях (например, в комментариях) у нас есть хук после создания, который добавляет в Rabbit событие электронной почты. Это событие затем обрабатывается рабочим, который запускается как задача rake, здесь , которая загружает соответствующего пользователя и отправляет электронное письмо.
Эта настройка работает в 90% случаев, но время от времени рабочий падает из-за исключения ActiveRecord :: RecordNotFound. Но как это возможно, я ставлю событие в очередь после создания объекта, и для прохождения события через слой Rabbit требуются дополнительные мс. Может ли быть так, что контекст задачи rake вызывает проблему? Это плохой выбор для запуска долго работающих рабочих в граблях с флагом окружающей среды? Помогите! :)