Key | Documentation |
---|
tcp_listeners | 用于監聽 AMQP連接的端口列表(無SSL). 可以包含整數 (即"監聽所有接口")或者元組如 {"127.0.0.1", 5672} 用于監聽一個或多個接口. Default: [5672] |
num_tcp_acceptors | 接受TCP偵聽器連接的Erlang進程數。 Default: 10 |
handshake_timeout | AMQP 0-8/0-9/0-9-1 handshake (在 socket 連接和SSL 握手之后)的最大時間, 毫秒為單位. Default: 10000 |
ssl_listeners | 如上所述,用于SSL連接。 Default: [] |
num_ssl_acceptors | 接受SSL偵聽器連接的Erlang進程數。 Default: 1 |
ssl_options | SSL配置.參考SSL documentation. Default: [] |
ssl_handshake_timeout | SSL handshake超時時間,毫秒為單位. Default: 5000 |
vm_memory_high_watermark | 流程控制觸發的內存閥值.相看memory-based flow control 文檔. Default: 0.4 |
vm_memory_high_watermark_paging_ratio | 高水位限制的分數,當達到閥值時,隊列中消息消息會轉移到磁盤上以釋放內存. 參考memory-based flow control 文檔. Default: 0.5 |
disk_free_limit | RabbitMQ存儲數據分區的可用磁盤空間限制.當可用空間值低于閥值時,流程控制將被觸發. 此值可根據RAM的總大小來相對設置 (如.{mem_relative, 1.0}). 此值也可以設為整數(單位為bytes)或者使用數字單位(如."50MB"). 默認情況下,可用磁盤空間必須超過50MB. 參考 Disk Alarms 文檔. Default: 50000000 |
log_levels | 控制日志的粒度.其值是日志事件類別(category)和日志級別(level)成對的列表. level 可以是 'none' (不記錄日志事件), 'error' (只記錄錯誤), 'warning' (只記錄錯誤和警告), 'info' (記錄錯誤,警告和信息), or 'debug' (記錄錯誤,警告,信息以及調試信息). 目前定義了4種日志類別. 它們是: - channel -針對所有與AMQP channels相關的事件
- connection - 針對所有與網絡連接相關的事件
- federation - 針對所有與federation相關的事件
- mirroring -針對所有與 mirrored queues相關的事件
Default: [{connection, info}] |
frame_max | 與客戶端協商的允許最大frame大小. 設置為0表示無限制,但在某些QPid客戶端會引發bug. 設置較大的值可以提高吞吐量;設置一個較小的值可能會提高延遲.
Default: 131072 |
channel_max | 與客戶端協商的允許最大chanel大小. 設置為0表示無限制.該數值越大,則broker使用的內存就越高. Default: 0 |
channel_operation_timeout | Channel 操作超時時間(毫秒為單位) (內部使用,因為消息協議的區別和限制,不暴露給客戶端). Default: 5000 |
heartbeat | 表示心跳延遲(單位為秒) ,服務器將在connection.tune frame中發送.如果設置為 0, 心跳將被禁用. 客戶端可以不用遵循服務器的建議, 查看 AMQP reference 來了解詳情. 禁用心跳可以在有大量連接的場景中提高性能,但可能會造成關閉了非活動連接的網絡設備上的連接落下. Default: 60 (3.5.5之前的版本是580) |
default_vhost | 當RabbitMQ從頭開始創建數據庫時創建的虛擬主機. amq.rabbitmq.log交換器會存在于這個虛擬主機中. Default: <<"/">> |
default_user | RabbitMQ從頭開始創建數據庫時,創建的用戶名. Default: <<"guest">> |
default_pass | 默認用戶的密碼. Default: <<"guest">> |
default_user_tags | 默認用戶的Tags. Default: [administrator] |
default_permissions | 創建用戶時分配給它的默認Permissions . Default: [<<".*">>, <<".*">>, <<".*">>] |
loopback_users | 只能通過環回接口(即localhost)連接broker的用戶列表 如果你希望默認的guest用戶能遠程連接,你必須將其修改為[]. Default: [<<"guest">>] |
cluster_nodes | 當節點第一次啟動的時候,設置此選項會導致集群動作自動發生. 元組的第一個元素是其它節點想與其建立集群的節點. 第二個元素是節點的類型,要么是disc,要么是ram Default: {[], disc} |
server_properties | 連接時向客戶端聲明的鍵值對列表 Default: [] |
collect_statistics | 統計收集模式。主要與管理插件相關。選項: - none (不發出統計事件)
- coarse (發出每個隊列 /每個通道 /每個連接的統計事件)
- fine (也發出每個消息統計事件)
你自已可不用修改此選項.Default: none |
collect_statistics_interval | 統計收集時間間隔(毫秒為單位). 主要針對于 management plugin. Default: 5000 |
auth_mechanisms | 提供給客戶端的SASL authentication mechanisms. Default: ['PLAIN', 'AMQPLAIN'] |
auth_backends | 用于 authentication / authorisation backends 的列表. 此列表可包含模塊的名稱(在模塊相同的情況下,將同時用于認證來授權)或像{ModN, ModZ}這樣的元組,在這里ModN將用于認證,ModZ將用于授權. 在2元組的情況中, ModZ可由列表代替,列表中的所有元素必須通過每個授權的確認,如{ModN, [ModZ1, ModZ2]}. 這就允許授權插件進行組合提供額外的安全約束. 除rabbit_auth_backend_internal外,其它數據庫可以通常 plugins來使用. Default: [rabbit_auth_backend_internal] |
reverse_dns_lookups | 設置為true,可讓客戶端在連接時讓RabbitMQ 執行一個反向DNS查找, 然后通過 rabbitmqctl 和 管理插件來展現信息.
Default: false |
delegate_count | 內部集群通信中,委派進程的數目. 在一個有非常多核的機器(集群的一部分)上,你可以增加此值. Default: 16 |
trace_vhosts | tracer內部使用. 你不應該修改. Default: [] |
tcp_listen_options | 默認socket選項. 你可能不想修改這個選項. Default: [{backlog, 128}, {nodelay, true}, {exit_on_close, false}] |
hipe_compile | 將此選項設置為true,將會使用HiPE預編譯部分RabbitMQ,Erlang的即時編譯器. 這可以增加服務器吞吐量,但會增加服務器的啟動時間. 你可以看到花費幾分鐘延遲啟動的成本,就可以帶來20-50% 更好性能.這些數字與高度依賴于工作負載和硬件.HiPE 支持可能沒有編譯進你的Erlang安裝中.如果沒有的話,啟用這個選項,并啟動RabbitMQ時,會看到警告消息. 例如, Debian / Ubuntu 用戶需要安裝erlang-base-hipe 包. HiPE并非在所有平臺上都可用, 尤其是Windows. 在 Erlang/OTP 17.5版本之前,HiPE有明顯的問題 . 對于HiPE,使用最新的OTP版本是高度推薦的. Default: false |
cluster_partition_handling | 如何處理網絡分區.可用模式有:- ignore
- pause_minority
- {pause_if_all_down, [nodes], ignore | autoheal}where [nodes] is a list of node names
(ex: ['rabbit@node1', 'rabbit@node2']) - autoheal
參考documentation on partitions 來了解更多信息Default: ignore |
cluster_keepalive_interval | 節點向其它節點發送存活消息和頻率(毫秒). 注意,這與 net_ticktime是不同的; 丟失存活消息不會引起節點掉線 Default: 10000 |
queue_index_embed_msgs_below | 消息大小在此之下的會直接內嵌在隊列索引中. 在修改此值時,建議你先閱讀 persister tuning 文檔. Default: 4096 |
msg_store_index_module | 隊列索引的實現模塊. 在修改此值時,建議你先閱讀 persister tuning 文檔. Default: rabbit_msg_store_ets_index |
backing_queue_module | 隊列內容的實現模塊. 你可能不想修改此值. Default: rabbit_variable_queue |
msg_store_file_size_limit | Tunable value for the persister. 你幾乎肯定不應該改變此值。 Default: 16777216 |
mnesia_table_loading_timeout | 在集群中等待使用Mnesia表可用的超時時間。 Default: 30000 |
queue_index_max_ journal_entries | Tunable value for the persister. 你幾乎肯定不應該改變此值。 Default: 65536 |
queue_master_locator | Queue master 位置策略. 可用策略有:- <<"min-masters">>
- <<"client-local">>
- <<"random">>
查看documentation on queue master location 來了解更多信息.Default: <<"client-local">> |