Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Sidekiq jobs stuck in enqueue

Sidekiq has been working in development mode just perfectly. Now that I am trying to use it in production, all the jobs are just sitting in enqueue and aren't ever being run. Could anyone point me in the right direction as to how to solve this issue?

like image 934
groffcole Avatar asked Jun 20 '13 03:06

groffcole


People also ask

How do I manually run a Sidekiq job?

To run sidekiq, you will need to open a terminal, navigate to your application's directory, and start the sidekiq process, exactly as you would start a web server for the application itself. When the command executes you will see a message that sidekiq has started.

How many jobs can Sidekiq handle?

The author of Sidekiq recommends a limit of 1,000 jobs per bulk enqueue and that's the default in the perform_bulk method. Even then you are saving the time of 999 round trips to Redis.

How do I delete a busy job on Sidekiq?

For example, http://localhost:3000/sidekiq, you can stop/remove the sidekiq jobs. Before that, you have to updates the routes. rb. It's important to note this is only for jobs which are still in the queue or scheduled.


2 Answers

Please check if sidekiq process is actually running:

ps aux | grep sidekiq 

If it is not, try to run sidekiq in foreground first and check the output.

bundle exec sidekiq -e production 
like image 107
cthulhu Avatar answered Sep 17 '22 17:09

cthulhu


In many cases for me it's because I haven't properly declared the queue for this specific service in config/sidekiq.yml.

like image 29
paascal Avatar answered Sep 18 '22 17:09

paascal