sql >> Databasteknik >  >> NoSQL >> Redis

Sidekiq bearbetar inte kö

Anledningen var i vårt fall:Sidekiq kan leta efter fel kö. Som standard använder Sidekiq en kö som heter "default". Vi använde två olika könamn och definierade dem i config/sidekiq.yml

# configuration file for Sidekiq
:queues:
  - queue_name_1
  - queue_name_2

Problemet är att den här konfigurationsfilen inte laddas automatiskt som standard i din utvecklingsmiljö (till skillnad från database.yml eller thinking_sphinx.yml till exempel) av en enkel bundle exec sidekiq kommando. Således skrev vi våra jobb i två vissa köer, och Sidekiq väntade på jobb i en tredje kö (standardkön). Du måste skicka sökvägen till konfigurationsfilen som en parameter genom -C eller --config alternativ:

bundle exec sidekiq -C ./config/sidekiq.yml

eller så kan du skicka könamnen direkt (inga blanksteg tillåtna här efter kommatecken):

bundle exec sidekiq -q queue_name_1,queue_name_2

För att ta reda på problemet är det bra att skicka alternativet -v eller --verbose på kommandoraden också, eller för att använda :verbose: true i sidekiq.yml fil. Allt som är definierat i en konfigurationsfil är naturligtvis värdelöst om konfigurationsfilen inte är laddad. Se därför till att du använder rätt konfigurationsfil först.



  1. MongoDB $rtrim

  2. Överväganden för att administrera MongoDB

  3. Vad är tcp-backlog i redis.conf

  4. Ansluter Heroku App till Atlas MongoDB molntjänst