(まず第一に、私は自分が望むほど英語を話せません。間違いを許してほしいです :S )
私は Ruby と Rails の初心者であり、アプリケーションをプロダクション モードで実行するとメモリ リークが発生するため、非常に混乱し、不満を感じています。
メモリが 800MB に達したため、サーバーがアプリをシャットダウンしています :O Google で調べたところ、リークを見つけるツールを使用することが 1 つの解決策であることがわかりました: Bleackhouse (アプリケーションをインストールできませんでした) または memprof (インストールに問題はありません)。
memprof を次のようにインストールします。
$ gem install memprof
インストールしたら、「irb」で使用してテストできますが、Rails 3アプリケーションで実行することは不可能です.Railsの新人だからです:(
memprof に関するウェブ、チュートリアル、スライドを読みすぎましたが、Rails にインストールする方法を説明する参考文献が見つかりません。
これらの行を config/environment.rb に追加します
require `gem which memprof/signal`.strip
config/environment.rb:
# -*- encoding : utf-8 -*-
require `gem which memprof/signal`.strip
# Load the rails application
require File.expand_path('../application', __FILE__)
# Initialize the rails application
NameApp::Application.initialize!
しかし、アプリ (Apache + Phusion Passenger) を実行すると、エラーがスローされます。
"Ruby (Rack) application could not be started"
A source file that the application requires, is missing.
It is possible that you didn't upload your application files correctly. Please check whether all your application files are uploaded.
A required library may not installed. Please install all libraries that this application requires.
Error message:
no such file to load --
/path/to/my/app/config/environment.rb 3 in `require'
...
memprof を irb で実行できる理由がよくわかりませんが、Rails アプリケーションでは使用できません。
編集1:
私は Frederick Cheung のアドバイスを実行しましたが、実行できるようになりましたが、開始してデータを json ファイルに書き込む方法がわかりません:S
誰かがこの問題で私を助けることができれば、私は非常に感謝しています.
ありがとう。