/ / Ruby on Rails: Jak wykryć konkretną instancję kundla w klastrze podczas uruchamiania? - Ruby-on-Rails, ruby, klastra kundli

Ruby on Rails: Jak wykryć konkretną instancję kundla w klastrze podczas uruchamiania? - Ruby-on-Rails, ruby, klastra kundli

Prowadzimy aplikację z pół tuzinem kundli. Nowa funkcja, którą dodaliśmy, to program szeregujący (rufus-scheduler), który działa w obrębie kundla i zapewnia przetwarzanie zadań w tle w stylu cronów. Chcemy uruchamiać ten harmonogram tylko na jednym z naszych kundli, ale nie możemy dowiedzieć się, jak - podczas uruchamiania (environment.rb) - aby zidentyfikować określonego kundla, aby uruchomić program planujący.

Przygotowaliśmy plik yaml z ustawieniem dlaport # dla kundla, w którym chcielibyśmy uruchomić program planujący. Podczas uruchamiania, w enviromnent.rb, chcielibyśmy przesłać zapytanie do pliku yaml, pobrać port, a następnie porównać go z uruchomioną instancją - jeśli jest taka sama, uruchom program planujący.

Ktoś odpowiedział niedawno, że powinniśmy na to patrzećrequest.port - podczas uruchamiania nie ma obiektu żądania. Gdzie jeszcze jest przechowywany port #? Albo, jak możemy przekazać parma poszczególnemu kundlowi, czy też porównać go do miejsca, w którym można się zidentyfikować?

Z góry dziękuję...

Russell

Odpowiedzi:

0 dla odpowiedzi № 1

Zapytałem to samo pytanie kilka tygodni wstecz.

Sens:

  1. Wtyczka o nazwie "Kogut"adresy ten problem.
  2. Użyj zasobu udostępnionego jak plik jako sposób synchronizacji.