2013-11-19 3 views
1

У меня есть resque и resque-scheduler с двумя разными очередями,
они выполняют ту же задачу, извлекают ссылки для определенного сайта и сохраняют эти ссылки.
Что произойдет, если resque-scheduler и resque работают параллельно и выполняют ту же задачу (выборки ссылок для одного и того же сайта)?
Как я могу справиться с такими ситуациями?Параметр resque и resque-scheduler работает параллельно

ответ

1

Либо вы не уточнили свою установку, либо там какие-то большие проблемы. Resque и Resque-scheduler должны были запускаться вместе. Планировщик времени должен планировать задачи в будущем. Работы Resque все еще выполняются. Пожалуйста, прочитайте этот раздел на своей домашней странице github: https://github.com/resque/resque-scheduler#delayed-jobs. Процитируем их,

Это сохранит работу ... в Resque отсроченной очереди на время которого процесс планировщик будет тянуть его из отсроченной очереди и поместить его в соответствующую очередь работ для данной работы и он будет обрабатываться , как только рабочий будет доступен (как и любое другое задание ).

Итак, вы идете. Следите за тем, чтобы ваши работники и планировщики были вместе навсегда. Чтобы ответить на другую часть вашего вопроса, если вы планируете какую-то задачу с помощью планировщика, и одна задача также ставится в очередь для того, чтобы resque сразу забирал, чистый результат зависит от логики выполнения задачи. «Получение чего-то с веб-сайта» звучит безобидно, что нужно делать дважды. Но если вы обновляете какую-либо таблицу транзакций, чтобы делать платежи своим поставщикам на основе результата извлечения, вы испытываете серьезные проблемы.

Смежные вопросы