Używam , ruby 1.9.3-p0
, nginx 1.0.4
i unicorn 3.6.2
dla mojego projektu. I mam problem. Muszę wykonać długoterminową operację na moim serwerze. To około 150 sekund. I jest w porządku w tym przypadku.Ustaw limit czasu jednorożca
mam skonfigurować nginx config w location
proxy_read_timeout 240;
proxy_send_timeout 240;
i skonfigurować mój plik unicorn.rb
z poleceniem
timeout 240
ale zawsze 502 bad gateway
błąd. Myślę, że problem z jednorożcem. Dostaję ten dziennik jednorożca
E, [2012-05-21T11:52:21.052382 #30423] ERROR -- : worker=1 PID:30871 timeout (104.052329915s > 60s), killing
E, [2012-05-21T11:52:21.080378 #30423] ERROR -- : reaped #<Process::Status: pid 30871 SIGKILL (signal 9)> worker=1
I, [2012-05-21T11:52:21.105045 #30423] INFO -- : worker=1 spawning...
I, [2012-05-21T11:52:21.111148 #894] INFO -- : worker=1 spawned pid=894
I, [2012-05-21T11:52:21.111659 #894] INFO -- : Refreshing Gem list
Czy możesz mi pomóc? Każda pomoc jest doceniana. Dziękuję Ci.
Czy jesteś pewien, że ten plik jednorożca jest ładowany? Jak ładujesz to? –
Używam klejnotu [capistrano-deploy] (https://github.com/lest/capistrano-deploy), aby ponownie załadować jednorożca. Interesujące jest to, że 'unicorn.rb' znajduje się w katalogu domowym unix, ale aplikacja rails znajduje się w folderze' web-app'. Nigdy wcześniej nie spotkałem podobnego. – caulfield
Nigdy nie korzystałem z tego klejnotu, ale jeśli robisz to ** po "wdrożeniu: uruchom ponownie", "jednorożec: przeładuj" ** musisz zrestartować jednorożca, a nie tylko go ponownie załadować. ** sudo /etc/init.d/unicorn restart ** i ustawiony zostanie limit czasu. Przeładowanie i ponowne uruchomienie to dwie różne rzeczy w jednorożcu. –