6

あなたの助けが必要です!

Nginx、MySQL、Solr、Unicorn を使用して、Rails アプリを Ubuntu 12.04 にデプロイしました。

言及されたすべてのサービスは、ユニコーンの代わりに開始され、次のようになります。

I, [2013-02-11T16:10:20.187989 #27547] INFO -- : Gem リストを更新中 I, [2013-02-11T16:10:52.159198 #27547] INFO -- : 既存のソケットのリンクを解除 =/var/www/ staging/shared/unicorn.sock I, [2013-02-11T16:10:52.159488 #27547] INFO -- : addr=/var/www/staging/shared/unicorn.sock fd=12 E でリッスン, [2013- 02-11T16:10:52.161513 #27547] エラー -- : メモリを割り当てられません - 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 :in start' /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:in load' /var/www/staging/shared/gems/ruby/1.9.1/bin/unicorn_rails:23:in '

VDS には 1.5Gb の RAM があり、ユニコーンには十分です。

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

私は unicorn_rails v4.5.0 を持っています

Unicorn は次のコマンドで起動します。

bundle exec unicorn_rails -c /var/www/staging/current/config/unicorn.rb -E production -D

ここで何が間違っていますか?


うーん、以前に次の奇妙なエラーがあったことを思い出しました:

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'" 

メモリの問題に関係しているのかもしれません…</p>

4

1 に答える 1

2

新しいプロセスをフォークするときにエラーが発生しているようです。config/unicorn.rb ファイルでワーカーを減らす必要があるかもしれません。各ワーカーはプロセスであり、各プロセスはアプリケーション環境を RAM にロードします。

于 2013-12-16T02:30:32.177 に答える