Подтвердить что ты не робот

Рабочие места Sidekiq застряли в очереди

Sidekiq отлично работает в режиме разработки. Теперь, когда я пытаюсь использовать его в производстве, все задания просто сидят в очереди и никогда не запускаются. Может ли кто-нибудь указать мне в правильном направлении, как решить эту проблему?

4b9b3361

Ответ 1

Проверьте, действительно ли выполняется процесс sidekiq:

ps aux | grep sidekiq

Если это не так, сначала попробуйте запустить sidekiq на переднем плане и проверьте вывод.

bundle exec sidekiq -e production

Ответ 2

Во многих случаях для меня это потому, что я не правильно объявил очередь для этой конкретной службы в config/sidekiq.yml.

Ответ 3

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

Ответ 4

Просто на голову всем, когда я закончил эту страницу, пытаясь выяснить, почему мои рабочие места в Rails Sidkiq не сдвинулись с очереди.

  1. Проверьте консоль sidekiq в своем терминале
  2. Моя проблема, которая нападала на меня почти час... да... у меня была точка прерывания "byebug" в коде, который глупо ставить в фоновом режиме. Это полностью испортит вашу работу. Очевидно... Я не хотел ставить эту точку останова там. Клянусь :)

Ответ 5

Мое решение:

1.) Посмотрите на Sidekiq Web UI для своего приложения (здесь вы можете увидеть, что рабочие места попадают в очередь состояние).

2.) Вручную повторить неудавшееся задание

3.) Проверьте журналы на сервере, на котором работает Sidekiq:

(обычно это место, где будет находиться журнал, если вы говорите, что делаете это при постановке)

tail -f /var/www/yourappname/current/log/staging.log

Обычно вы увидите более подробное сообщение об ошибке, почему Sidekiq не может обрабатывать заданные задания. В нашем случае была переменная среды, указывающая на неправильную конечную точку, специфичную для нашей конфигурации развертывания.

Ответ 6

Использование драгоценного камня capistrano-sidekiq решило нашу проблему