2010-11-25 6 views
2

"eheap_alloc"ウィンドウのサイズを変更するにはどうすればよいですか?これは、いくつかのクライアント数を持つerlangサーバの負荷テストを行うためです。サーバがクラッシュして異常終了したerlangサーバーを実行するWindowsシステムで "eheap_alloc"サイズを変更する方法は?

eheap_alloc: Cannot allocate 8414160 bytes of memory (of type "heap"). 

を示すことによって、しかし、Linuxでは、それはすべてのために働くことができた後、その後、私のサーバーは、100クライアントまで成功した実行されているが、それは200であれば、サーバは良い結果と2分の作品とクライアントは正常に終了します。どのように私はこの問題に来ることができますか?

お手数ですが

ありがとうございます。

+0

eheap_allocは、ヒープメモリの割り当てを担当するアロケータです。それは、Windowsはそれ以上のメモリを与えるつもりはないので、あきらめる。だから、調べるべき質問は、クライアントがそれをあきらめた時点でどれだけのメモリを使用しているかということです。クラッシュダンプをお持ちの場合は、クラッシュダンプビューアを使用して調べることができます。 –

+0

クラッシュダンプビューアの使用について:http://stackoverflow.com/questions/6616101/examining-erlang-crash-dumps-how-to-account-for-all-memory – legoscia

答えて

0

あなたは[1]を試しましたか?異なるサイズの ERL + HMSサイズ

Sets the default heap size of processes to the size Size. 

ERL + HMBSサイズ

Sets the default binary virtual heap size of processes to the size Size. 

? [1] http://www.erlang.org/doc/man/erl.html

+0

これは単に問題を悪化させるあなたの1000のプロセスのそれぞれがより大きく開始して、より早くeheap_allocの障壁を打つように。 –

+0

yaさん。私は試みましたが、結果に変化はありませんでした。もう一度同じエラーが出ます。 – sreenivas

0

このメッセージが表示されたら、Linuxでうまく動作しているにもかかわらず、サーバーにメモリリークが発生している可能性があります。これは、いくつかの状況でリリースメモリからあなたをロックする "ライブロック"のいくつかの並べ替えをすることができます。だからあなたができることは、あなたのサーバーでメモリを食べることをより良く見せることです。

関連する問題