2012-05-03 4 views
6

もRabbitMQの中のディスク容量の制限を設定する方法8ギガバイトRabbitMQ接続がブロックしていますか?

についても、私はブロッキングステートに時間私の接続表示RabbitMQのサーバに接続し、私は新しいメッセージ を公開することはできません私は6ギガバイトのRAM空きディスク・スペースを持っています

+0

をset_vm_memory_high_watermarkより多くの情報を提供できますか?コードはおそらくブラウザー内の管理GUIのスナップショットをサンプルします。 – robthewolf

+0

コード賢明な関連の修正とディスカッション: http://stackoverflow.com/questions/14386392/how-to-detect-alarm-based-blocking-rabbitmq-producer/17104037#17104037 – hellojava

答えて

2

デフォルトでは、[disk_free_limit](ソース:[1])はRAMの1.0倍を超える必要があります。これはあなたのケースに当てはまるので、流れを正確に阻止しているものを確認したいかもしれません。これを行うには、[rabbitmqctl man](source:[2])を読んで、last_blocked_byコマンドを実行してください。それはブロックする理由を教えてくれるはずです。

disk_free_limitを変更するには、メモリであると仮定して(何らかの理由で空きディスク領域を正しく計算していないと仮定します)、[rabbitmq.configのコンフィグレーション(source:[1])を読み、rabbitmq.configファイルを開き、次の行を追加します。{rabbit, [{disk_free_limit, {mem_relative, 0.1}}]}、構成宣言内。私のrabbitmq.configファイルは次のようになります:

[ 
{rabbit, [{disk_free_limit, {mem_relative, 0.1}}]} 
]. 

具体的な数字はあなた次第です。

ソース

  1. http://www.rabbitmq.com/configure.html#configuration-file
  2. http://www.rabbitmq.com/man/rabbitmqctl.1.man.html
7

は、私は同じ問題を抱えて。 RabbitMQのサーバがしきい値

http://www.rabbitmq.com/memory.html

より多くのメモリを使用していたように見える私は、これらの接続のブロックを解除するには、次のコマンドを実行しました:

rabbitmqctlは0.6

(デフォルト値は0.4である)

関連する問題