2014-06-14 16 views
7

Sto sviluppando un AngularJS (front-end) in esecuzione in un server Web Nginx che invia la richiesta a un'API Rails (back-end) in esecuzione in un server applicazioni Unicorn.Timeout operai Unicorn

Riconosco che sono solo uno sviluppatore e non ho idea dell'amministrazione dei server, quindi ho appena messo i server e avviato.

L'applicazione funziona, tuttavia, Unicorn ha uno strano comportamento. Quando lo avvio ottengo sempre questo errore:

[email protected]:~/dev/scripts$ ./start_unicorn.sh 
I, [2014-06-14T11:46:06.085834 #4258] INFO -- : Refreshing Gem list 
I, [2014-06-14T11:46:11.591592 #4258] INFO -- : listening on addr=0.0.0.0:8080 fd=10 
I, [2014-06-14T11:46:12.087321 #4258] INFO -- : master process ready 
I, [2014-06-14T11:46:12.151320 #4263] INFO -- : worker=0 ready 
I, [2014-06-14T11:46:12.150526 #4266] INFO -- : worker=1 ready 
E, [2014-06-14T11:46:39.112668 #4258] ERROR -- : worker=0 PID:4263 timeout (16s > 15s), killing 
E, [2014-06-14T11:46:39.112898 #4258] ERROR -- : worker=1 PID:4266 timeout (16s > 15s), killing 
E, [2014-06-14T11:46:39.118081 #4258] ERROR -- : reaped #<Process::Status: pid 4263 SIGKILL (signal 9)> worker=0 
E, [2014-06-14T11:46:39.118634 #4258] ERROR -- : worker=1 PID:4266 timeout (16s > 15s), killing 
E, [2014-06-14T11:46:39.121820 #4258] ERROR -- : reaped #<Process::Status: pid 4266 SIGKILL (signal 9)> worker=1 
I, [2014-06-14T11:46:39.172067 #4284] INFO -- : worker=1 ready 
I, [2014-06-14T11:46:39.172620 #4281] INFO -- : worker=0 ready 

Ci vogliono alcuni secondi prima che risponda. E questo accade in continuazione.

Credo che mi manca un po 'di configurazione, ma non sa ...

Se avete bisogno di ulteriori dettagli, come ad esempio i file di configurazione, fammelo sapere

+0

Ciao, può mostrare il proprio '' 'start_unicorn.sh' '' script? – mixan946

+0

Simile a http://stackoverflow.com/questions/26742776/unicorn-worker-timeout-on-aws-boxes sembra che ci sia una richiesta che lo colpisce. Problema con l'endpoint vs unicorno stesso. –

risposta

3

Avete precompilato il vostro patrimonio? sei in produzione? Se non quando avvii il tuo server e ricevi la tua prima richiesta, i binari proveranno a compilare le tue risorse che possono impiegare più di 15 secondi e raggiungere il timeout di unicorno.

Nella tua start.sh si dovrebbe avere qualche

export RAILS_ENVIRONEMENT=production

E durante la distribuzione si si dovrebbe avere:

rake assets:precompile

+1

Grazie per la tua risposta, Luc, ma mi ci è voluto un sacco di tempo senza risultati, quindi mi sono trasferito a Puma. – Rober

+0

Questo funziona per me. Grazie Luc –

Problemi correlati