1

私はjruby1.7を使用するRails3アプリを持っており、大量のメモリを必要とする状況で、ローカル開発環境(OS X10.8とjdk7)でRailsコンソールを使用しようとしています。Railsコンソールを次のように実行します。

jruby -J-Xms1024m -J-Xmx4096m -J-XX:+ UseConcMarkSweepGC -J-XX:+ CMSIncrementalMode -S rails c samuel_hml

次に、railsconsole/を使用して長時間実行プロセスを開始します。

「OutOfMemoryError:Javaヒープスペース」エラーが発生した後、jrubyjavaプロセスは常に失敗します。しかし、コンソールを実行してActivity Monitorを確認すると、実際には700MBを超える容量を使用することはありません。

4

3 に答える 3

3

私は解決策を見つけました:

RAILS_ENV=samuel_hml jruby -J-Xms1024m -J-Xmx4096m -J-XX:+UseConcMarkSweepGC -J-XX:+CMSIncrementalMode -S rails c

jrubyは私の「-J-Xms1024m-J-Xmx4096m-J-XX:+ UseConcMarkSweepGC -J-XX:+CMSIncrementalMode」パラメーターを無視していました

于 2013-02-20T13:43:44.243 に答える
0

Javaの周りにある種のラッパーがありますか?通常は-Xmx

jruby -Xms1024m -Xmx4096m -XX:+UseConcMarkSweepGC -J-XX:+CMSIncrementalMode -S rails c samuel_hml
于 2013-02-14T14:39:32.107 に答える
0

これは単なる推測ですが、Javaネイティブバッファを使用したときに同様の問題が発生しました。最大ヒープサイズを2048MBに設定したところ、すべてのメモリが使用されていないことがモニターに表示されたにもかかわらず、OutOfMemoryErrorが発生しました。本当の問題は、Javaメモリではなく、実際に不足しているネイティブメモリにありました。システムモニターでチェックアウトしました。

Javaのメモリ量を減らして、ネイティブバッファ用の空き領域を増やすと、問題は解決しました。

だから多分ここにあなたは似たようなものを持っていますか?

于 2013-02-14T14:57:03.010 に答える