Nginxと他のいくつかのプログラムと一緒に小さなVPS(512MBのRAM)でRabbitMQを実行しようとしています。私は他のすべてのメモリ使用量を難なく微調整することができましたが、RabbitMQにRAMを少なくすることはできません。RabbitMQメモリの使用量を減らす
ErlangがRabbitMQに使用するスレッドの数を減らす必要があると思いますが、動作させることができませんでした。私はまた、vm_memory_high_watermark
をデフォルト(40%)以下のいくつかの異なる値に設定しようとしました。
問題の一部は、VPSプロバイダ(MediaTemple)が割り当てられたメモリを通過できるようになる可能性があるため、フリーまたはトップを使用すると、サーバーのサイズが約900 MBであることがわかります。
RabbitMQによるメモリ使用量を削減する、またはErlangが作成するスレッド数を制限するための提案はありますか? Erlangはプロセスコマンドで見た-A30フラグに基づいて30スレッドを使用していると私は信じています。
理想的には、RabbitMQ memの使用量を100MB未満にしたいと考えています。
編集:5%(または設定ファイルの0.05)に設定vm_memory_high_watermark
で
、RabbitMQのログはRabbitMQののメモリ制限が51メガバイトに設定されていることを報告しています。私は51MBがどこから来ているのか分からない。現在割り当てられているVPSメモリは924MBなので、その5%は約46MBです。
RabbitMQを起動する前にhtop/freeによると、私は使用済みのRAMの約453MBに座っていて、RabbitMQを起動した後は約650MBです。ほぼ200mbの増加。 RabbitMQが動作する下限は200MBであるのでしょうか? PSの補助や無料の
編集2
Here are some screenshots前とRabbitMQのとRabbitMQのが開始されたときにメモリスパイクを示すグラフを開始した後。
編集3
私はまた、有効なしのプラグインをチェックし、それは非常に少しの違いを作りました。それは私が持っていたプラグイン(管理とその前提条件)は、約8 MBのRAMの使用を追加したようです。
編集4私はもはやでテストする場合は、このサーバーを持っていない
が、しかし、私の知る限りでは16のデフォルトに設定されているdelegate_count
設定のconfがあり、これは16一口を生成します
私は 'vm_memory_high_watermark'を使ったとき、ログの正しいラム限界を報告しました(私が購入した512mbではなく、実際のVPSの900mbに基づいて)。 5%に設定するとログに45MBが表示されましたが、生成されたerlangプロセスには20〜25MBのRAMが使用されていました。 –
「それぞれの処理プロセス」とは、OSの処理または内部処理のエラーを意味しますか? –
htopを実行すると、 '/usr/lib/erlang/erts-5.7.4/bin/beam.smp -W w -K true -A30 -P 1048576'と表示され、その後、RabbitMQと経脈。 –