Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Jak mogę automatycznie utworzyć resque worker podczas uruchamiania?

Nie używam klejnotu boga, ponieważ (1) widziałem projekt, który był bardzo zniszczony przez złożoność wprowadzonej konfiguracji, i (2) osobiście czuję się naprawdę dobrze ze standardowymi narzędziami Linux (Ubuntu), które obsługują tego rodzaju rzeczy.

Aby uruchomić Resque worker podczas uruchamiania

Mam ten kod w moim /etc/rc.local plik. Mam wdrożenie użytkownik w systemie:

# Start Resque
su -l deploy -c "/home/deploy/start-resque-workers"
su -l deploy -c "/home/deploy/start-resque-webui"

Następnie w tych skryptach konfiguruję środowisko ruby ​​i uruchamiam zadanie rake:

# Load RVM into a shell session *as a function*
if [[ -s "$HOME/.rvm/scripts/rvm" ]] ; then
  # First try to load from a user install
  source "$HOME/.rvm/scripts/rvm"
elif [[ -s "/usr/local/rvm/scripts/rvm" ]] ; then
  # Then try to load from a root install
  source "/usr/local/rvm/scripts/rvm"
else
  printf "ERROR: An RVM installation was not found.\n"
fi

# Use rvm to switch to the default ruby. 
rvm use default

# Now launch the app
cd /home/deploy/app-name-here/current
nohup rake QUEUE=* RAILS_ENV=production environment resque:work &

Używam tego rodzaju konfiguracji od lat i jest solidna. Serwery nie ulegają awarii. Nie potrzebuję jeszcze narzutu na instalowanie innego systemu (takiego jak boski klejnot), aby pilnować tych innych serwerów.

Dodatkowo używam klejnotu capistrano do obsługi ponownego uruchamiania pracowników podczas wdrażania.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nie można połączyć się z serwerem Redis przy użyciu dostawcy stanu sesji ASP.NET

  2. Publikuj subskrybuj za pomocą nodejs i redis(node_redis)

  3. Redis:Jak przeanalizować wynik listy

  4. Jak potokować w node.js do redis?

  5. Node.js, Socket.io, Redis pub/sub wysoki poziom głośności, małe opóźnienia