ho bisogno del tuo aiuto!Unicorn non può allocare memoria
Ho distribuito la mia app Rails in Ubuntu 12.04, utilizzando Nginx, MySQL, Solr e Unicorn.
Ogni servizio di cui è iniziato, invece di unicorno, che dice il seguente:
I, [2013-02-11T16:10:20.187989 #27547] INFO -- : Refreshing Gem list I, [2013-02-11T16:10:52.159198 #27547] INFO -- : unlinking existing socket=/var/www/staging/shared/unicorn.sock I, [2013-02-11T16:10:52.159488 #27547] INFO -- : listening on addr=/var/www/staging/shared/unicorn.sock fd=12 E, [2013-02-11T16:10:52.161513 #27547] ERROR -- : Cannot allocate memory - fork(2) (Errno::ENOMEM) /var/www/staging/shared/gems/ruby/1.9.1/gems/unicorn-4.5.0/lib/unicorn/http_server.rb:496:in
fork' /var/www/staging/shared/gems/ruby/1.9.1/gems/unicorn-4.5.0/lib/unicorn/http_server.rb:496:in
spawn_missing_workers' /var/www/staging/shared/gems/ruby/1.9.1/gems/unicorn-4.5.0/lib/unicorn/http_server.rb:142:instart' /var/www/staging/shared/gems/ruby/1.9.1/gems/unicorn-4.5.0/bin/unicorn_rails:209:in
' /var/www/staging/shared/gems/ruby/1.9.1/bin/unicorn_rails:23:inload' /var/www/staging/shared/gems/ruby/1.9.1/bin/unicorn_rails:23:in
'
VDS ha 1,5 GB di RAM ed è sufficiente per Unicorn:
cat /proc/meminfo
MemTotal: 1585152 kB MemFree: 989580 kB Cached: 425296 kB Active: 348504 kB Inactive: 175356 kB Active(anon): 98488 kB Inactive(anon): 76 kB Active(file): 250016 kB Inactive(file): 175280 kB Unevictable: 0 kB Mlocked: 0 kB SwapTotal: 204800 kB SwapFree: 204800 kB Dirty: 12 kB Writeback: 0 kB AnonPages: 98564 kB Shmem: 3604 kB Slab: 71680 kB SReclaimable: 66144 kB SUnreclaim: 5536 kB
ho unicorn_rails v4.5.0
L'unicorno inizia dal seguente comando:
bundle exec unicorn_rails -c /var/www/staging/current/config/unicorn.rb -E production -D
Cosa sto facendo di sbagliato qui?
Hmm, mi sono ricordato, che in precedenza avevo seguente strano errore:
failed: "rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-1.9.3-p327' -c 'cd /var/www/staging/current && bundle exec unicorn_rails -c /var/www/staging/current/config/unicorn.rb -E production -D'"
Forse è in qualche modo legato a problemi di memoria ...
Ha avuto lo stesso problema occasionalmente. Ridurre i miei lavoratori dell'unicorno sembra aiutare ma non l'ho risolto. – ScotterC
@AntonAL, quanti lavoratori stai cercando di iniziare? – WattsInABox
Non sono sicuro che questo possa essere d'aiuto, ma ecco un link a uno dei miei progetti che avvia unicorno su Ubuntu 12.04 https://github.com/cyrusstoller/revtilt – Cyrus