RabbitMQ主配置檔案
3.6版本主配置檔案
/opt/rabbitmq_server-3.6.12/ebin/rabbit.app
修改預設記憶體水位線
grep vm_memory_high /opt/rabbitmq_server-3.6.12/ebin/rabbit.app|sed -e 's/4/8/;s/5/75/'
記憶體警告:
指令行設定最高使用記憶體占比:
rabbitmqctl set_vm_memory_high_watermark 0.6 設定記憶體低水位線為實體記憶體的60%
參數配置:
vm_memory_high_watermark, 0.8 : 設定記憶體低水位線,若低于該水位線,則開啟流控機制,預設值是0.4,即記憶體總量的40%
vm_memory_high_watermark_paging_ratio, 0.75 : 設定記憶體低水位線消息開始持久化到磁盤,預設50%
磁盤警告:
指令行設定磁盤使用量剩餘
rabbitmqctl set_disk_free_limit 50G #磁盤使用量剩餘50G時,不收發消息
rabbitmqctl set_disk_free_limit mem_relative 10.0 #磁盤使用量剩餘至實體記憶體10倍時,不收發消息
當磁盤剩餘空間低于确定的門檻值時,RabbitMQ同樣會阻塞生産者。
預設情況下磁盤門檻值為50MB,表示當磁盤剩餘空間低于50MB時會阻塞生産者并停止記憶體中消息的換頁動作。
參數配置:
[{rabbit, [{disk_free_limit, {mem_relative, 1.0}}]}]. #磁盤使用量剩餘至實體記憶體相同時,不收發消息
[{disk_free_limit, "50G"}}]}]. #磁盤使用量剩餘50G時,不收發消息
建立MQ資料路徑
開啟web插件
開啟監控插件
<code>rabbitmq-plugins enable rabbitmq_prometheus</code>