一、設置配置文件:
rabbitmq的系統配置文件一般是rabbitmq.conf,可以登錄后台查看它的路徑,如果你是源碼安裝,最初這個文件是沒有的,需要手動創建;如果是apt安裝他的位置在/etc/rabbitmq/目錄下,它規定了rabbitmq的眾多參數設定;
# 進入指定目錄 touch /usr/local/rabbitmq_server/etc/rabbitmq/rabbitmq.conf
配置文件的語法繼承於erlang語言,有點類似json
[ %% this is rabbitmq {rabbit, [ {vm_memory_high_watermark_paging_ratio, 0.4}, {vm_memory_high_watermark, 0.4} ] } ].
說明:
-
注釋采用%%;
-
注意最后結尾一定要加上.,表示結束,否則啟動會報錯,rabbitmq啟動的時候會自動讀取這個文件;
在新的3.7版本以上配置文件開始使用sysctl格式,上述配置文件的sysctl格式如下:
# this is rabbitmq,這是注釋 vm_memory_high_watermark_paging_ratio = 0.4 vm_memory_high_watermark = 0.4
二、常用的配置參數
tcp_listerners : 設置rabbimq的監聽端口,默認為[5672]。 disk_free_limit : 磁盤低水位線,若磁盤容量低於指定值則停止接收數據,默認值為{mem_relative, 1.0},即與內存相關聯1:1,也可定制為多少byte. vm_memory_high_watermark : 設置內存低水位線,若低於該水位線,則開啟流控機制,默認值是0.4,即內存總量的40%。 vm_memory_high_watermark_paging_ratio : 設置內存低水位線消息開始持久化到磁盤,默認50% force_fine_statistics : 該參數屬於rabbimq_management,若為true則進行精細化的統計,但會影響性能。 frame_max : 與客戶端協商的允許最大包大小,若包太大會拆分成多次發送,默認是131072=128K。 heartbeat : 客戶端與服務端心跳間隔,設置為0則關閉心跳,默認是60秒。 log_level : 控制日志的粒度,'none' (不記錄日志事件), 'error' (只記錄錯誤), 'warning' (只記錄錯誤和警告), 'info' (記錄錯誤,警告和信息), or 'debug' (記錄錯誤,警告,信息以及調試信息). channel_max:與客戶端協商的允許最大chanel大小. 設置為0表示無限制.該數值越大,則broker使用的內存就越高,Default: 0 cluster_nodes:當節點第一次啟動的時候,設置此選項會導致集群動作自動發生. 元組的第一個元素是其它節點想與其建立集群的節點. 第二個元素是節點的類型,要么是disc,要么是ram,Default: {[], disc} collect_statistics_interval:統計收集時間間隔(毫秒為單位),主要針對於 management plugin.Default: 5000
三、配置文件示例:
# 3.7版本以前的格式 [ %% this is rabbitmq setting {rabbit, [ {vm_memory_high_watermark_paging_ratio, 0.5}, {vm_memory_high_watermark, 0.4}, {tcp_listeners, [5672]}, {log_levels, [{connection, error}, {channel, error}]}, {heartbeat, 60}, {frame_max, 131072}, {channel_max, 500}, {disk_free_limit, 50000000}, ] } ]. # 3.7版本sysctl格式 # this is rabbitmq setting listeners.tcp.local = 127.0.0.1:5672 heartbeat = 60 frame_max = 131072 channel_max = 128 vm_memory_high_watermark.relative = 0.4 vm_memory_high_watermark_paging_ratio = 0.5 disk_free_limit.absolute = 50000 log.console = false log.console.level = info log.exchange = false log.exchange.level = info
轉自:https://www.cnblogs.com/cwp-bg/p/8397639.html