zoukankan      html  css  js  c++  java
  • RabbitMQ配置文件(rabbitmq.conf)

    rabbitmq.conf配置文件示例:

     

    #======================================

    #RabbitMQ经纪人部分

    #======================================

    ##相关文档指南:https://rabbitmq.com/configure.html。看到

    ## https://rabbitmq.com/documentation.html以获得文档ToC。

    ## 联网

    ## ====================

    ##

    ##相关文档指南:https://rabbitmq.com/networking.html。

    ##

    ##默认情况下,RabbitMQ将使用

    ##标准(保留)AMQP 0-9-1和1.0端口。

    ##

    #listeners.tcp.default = 5672

    ##要侦听特定接口,请提供带有端口的IP地址。

    ##例如,仅在本地主机上侦听IPv4和IPv6:

    ##

    #IPv4

    #listeners.tcp.local = 127.0.0.1:5672

    #IPv6

    #listeners.tcp.local_v6 = :: 1:5672

    ##您可以使用侦听器名称定义多个侦听器

    #listeners.tcp.other_port = 5673

    #listeners.tcp.other_ip = 10.10.10.10:5672

     

    ## TLS侦听器的配置方式与TCP侦听器相同,

    ##包括控制界面选择的选项。

    ##

    #listeners.ssl.default = 5671

     

    ##可以禁用常规的TCP(非TLS)侦听器。客户群

    ##未配置为使用TLS,并且正确的启用TLS的端口将无法使用

    ##连接到该节点。

    #listeners.tcp = none

     

    ##将接受TCP连接的Erlang进程数

    ##和TLS侦听器。

    ##

    #num_acceptors.tcp = 10

    #num_acceptors.ssl = 10

     

    ##套接字编写器将每传输这么多字节就强制GC。

    ##默认值为1 GiB(`1000000000`)。设置为“关闭”以禁用。

    ##

    #socket_writer.gc_threshold = 1000000000

    ##禁用:

    #socket_writer.gc_threshold = off

     

    ## AMQP 0-9-1和AMQP 1.0握手允许的最长时间

    ##(在套接字连接和TLS握手之后执行)以毫秒为单位完成。

    ##

    #handshake_timeout = 10000

     

    ##设置为“ true”以在接受以下内容时执行反向DNS查找

    ##连接。然后,rabbitmqctl和管理UI将显示主机名

    ##而不是IP地址。默认值为“ false”。

    ##

    #reverse_dns_lookups = false

     

    ##

    ##安全性,访问控制

    ## ==============

    ##

     

    ##相关文档指南:https://rabbitmq.com/access-control.html。

     

    ##仅允许默认的“ guest”用户访问服务器

    ##通过回送接口(例如localhost)。

    ## {loopback_users,[<<“ guest” >>]},

    ##

    #loopback_users.guest = true

     

    ##如果要允许访问以下内容,请取消注释以下行:

    来自网络上任何地方的##位来宾用户。

    #loopback_users.guest = false

     

    ## TLS配置。

    ##

    ##相关文档指南:https://rabbitmq.com/ssl.html。

    ##

    #ssl_options.verify = verify_peer

    #ssl_options.fail_if_no_peer_cert = false

    #ssl_options.cacertfile = /path/to/cacert.pem

    #ssl_options.certfile = /path/to/cert.pem

    #ssl_options.keyfile = /path/to/key.pem

    #ssl_options.honor_cipher_order = true

    #ssl_options.honor_ecc_order = true

     

    #ssl_options.ciphers.1 = ECDHE-ECDSA-AES256-GCM-SHA384

    #ssl_options.ciphers.2 = ECDHE-RSA-AES256-GCM-SHA384

    #ssl_options.ciphers.3 = ECDHE-ECDSA-AES256-SHA384

    #ssl_options.ciphers.4 = ECDHE-RSA-AES256-SHA384

    #ssl_options.ciphers.5 = ECDH-ECDSA-AES256-GCM-SHA384

    #ssl_options.ciphers.6 = ECDH-RSA-AES256-GCM-SHA384

    #ssl_options.ciphers.7 = ECDH-ECDSA-AES256-SHA384

    #ssl_options.ciphers.8 = ECDH-RSA-AES256-SHA384

    #ssl_options.ciphers.9 = DHE-RSA-AES256-GCM-SHA384

    #ssl_options.ciphers.10 = DHE-DSS-AES256-GCM-SHA384

    #ssl_options.ciphers.11 = DHE-RSA-AES256-SHA256

    #ssl_options.ciphers.12 = DHE-DSS-AES256-SHA256

    #ssl_options.ciphers.13 = ECDHE-ECDSA-AES128-GCM-SHA256

    #ssl_options.ciphers.14 = ECDHE-RSA-AES128-GCM-SHA256

    #ssl_options.ciphers.15 = ECDHE-ECDSA-AES128-SHA256

    #ssl_options.ciphers.16 = ECDHE-RSA-AES128-SHA256

    #ssl_options.ciphers.17 = ECDH-ECDSA-AES128-GCM-SHA256

    #ssl_options.ciphers.18 = ECDH-RSA-AES128-GCM-SHA256

    #ssl_options.ciphers.19 = ECDH-ECDSA-AES128-SHA256

    #ssl_options.ciphers.20 = ECDH-RSA-AES128-SHA256

    #ssl_options.ciphers.21 = DHE-RSA-AES128-GCM-SHA256

    #ssl_options.ciphers.22 = DHE-DSS-AES128-GCM-SHA256

    #ssl_options.ciphers.23 = DHE-RSA-AES128-SHA256

    #ssl_options.ciphers.24 = DHE-DSS-AES128-SHA256

    #ssl_options.ciphers.25 = ECDHE-ECDSA-AES256-SHA

    #ssl_options.ciphers.26 = ECDHE-RSA-AES256-SHA

    #ssl_options.ciphers.27 = DHE-RSA-AES256-SHA

    #ssl_options.ciphers.28 = DHE-DSS-AES256-SHA

    #ssl_options.ciphers.29 = ECDH-ECDSA-AES256-SHA

    #ssl_options.ciphers.30 = ECDH-RSA-AES256-SHA

    #ssl_options.ciphers.31 = ECDHE-ECDSA-AES128-SHA

    #ssl_options.ciphers.32 = ECDHE-RSA-AES128-SHA

    #ssl_options.ciphers.33 = DHE-RSA-AES128-SHA

    #ssl_options.ciphers.34 = DHE-DSS-AES128-SHA

    #ssl_options.ciphers.35 = ECDH-ECDSA-AES128-SHA

    #ssl_options.ciphers.36 = ECDH-RSA-AES128-SHA

     

    ##选择要使用的身份验证/授权后端。

    ##

    ##替代后端由插件提供,例如rabbitmq-auth-backend-ldap。

    ##

    ##注意:这些设置需要启用某些插件。

    ##

    ##相关文档指南:

    ##

    ## * https://rabbitmq.com/plugins.html

    ## * https://rabbitmq.com/access-control.html

    ##

     

    #auth_backends.1 = Rabbit_auth_backend_internal

     

    ##使用单独的后端进行身份验证和授权,

    ## 见下文。

    #auth_backends.1.authn = rabbit_auth_backend_ldap

    #auth_backends.1.authz = rabbit_auth_backend_internal

     

    ## Rabbitmq_auth_backend_ldap插件允许经纪人执行以下操作:

    ##通过延迟验证和授权

    ##外部LDAP服务器。

    ##

    ##相关文档指南:

    ##

    ## * https://rabbitmq.com/ldap.html

    ## * https://rabbitmq.com/access-control.html

    ##

    ##使用LDAP进行身份验证和授权

    #auth_backends.1 = Rabbit_auth_backend_ldap

     

    ##使用HTTP服务进行身份验证和

    ##授权

    #auth_backends.1 = rabbit_auth_backend_http

     

    ##在链中使用两个后端:首先使用HTTP,然后使用内部

    #auth_backends.1 = rabbit_auth_backend_http

    #auth_backends.2 = Rabbit_auth_backend_internal

     

    ##身份验证

    ##内置机制为“普通”,

    ##'AMQPLAIN'和'EXTERNAL'其他机制可以通过添加

    ##插件。

    ##

    ##相关文档指南:https://rabbitmq.com/authentication.html。

    ##

    #auth_mechanisms.1 = PLAIN

    #auth_mechanisms.2 = AMQPLAIN

     

    ## Rabbitmq-auth-mechanism-ssl插件可以实现

    ##根据客户端的x509(TLS)证书对用户进行身份验证。

    ##相关文档指南:https://rabbitmq.com/authentication.html。

    ##

    ##要使用auth-mechanism-ssl,EXTERNAL机制应

    ##被启用:

    ##

    #auth_mechanisms.1 = PLAIN

    #auth_mechanisms.2 = AMQPLAIN

    #auth_mechanisms.3 = EXTERNAL

     

    ##要在所有客户端上强制执行基于x509证书的身份验证,

    ##排除所有其他机制(注意:这将禁用基于密码的

    ##身份验证,甚至用于管理UI!):

    ##

    #auth_mechanisms.1 = EXTERNAL

     

    ##这与rabbitmq-auth-mechanism-ssl插件和

    ## STOMP ssl_cert_login配置。参见RabbitMQ STOMP插件

    此文件后面的##配置部分和README中的内容

    ## https://github.com/rabbitmq/rabbitmq-auth-mechanism-ssl进一步

    ## 细节。

    ##

    ##使用TLS证书的CN代替其DN作为用户名

    ##

    #ssl_cert_login_from = common_name

     

    ## TLS握手超时,以毫秒为单位。

    ##

    #ssl_handshake_timeout = 5000

     

     

    ##群集名称

    ##

    #cluster_name = dev3.eng.megacorp.local

     

    ##密码哈希实现。只会影响新的

    ##个创建用户。重新计算现有用户的哈希

    ##必须更新她的密码。

    ##

    ##要使用SHA-512,请设置为rabbit_password_hashing_sha512。

    ##

    #password_hashing_module = rabbit_password_hashing_sha256

     

    ##导入从早期版本导出的定义时

    ##高于3.6.0,可以返回到MD5(仅执行此操作

    ##作为临时措施!),将其设置为rabbit_password_hashing_md5。

    ##

    #password_hashing_module = rabbit_password_hashing_md5

     

    ##

    ##默认用户/ VHost

    ## ====================

    ##

     

    ##首次启动RabbitMQ将创建一个虚拟主机和一个用户。这些

    ##配置项控制要创建的内容。

    ##相关文档指南:https://rabbitmq.com/access-control.html

    ##

    #default_vhost = /

    #default_user = guest

    #default_pass = guest

     

    #default_permissions.configure = .*

    #default_permissions.read = .*

    #default_permissions.write = .*

     

    ##默认用户的标签

    ##

    ##有关标签的更多详细信息,请参见

    ##管理插件,网址为https://rabbitmq.com/management.html。

    ##

    #default_user_tags.administrator = true

     

    ##定义其他标签,如下所示:

    #default_user_tags.management = true

    #default_user_tags.custom_tag = true

     

    ##

    ##其他与网络和协议相关的配置

    ## ================================================ =====

    ##

     

    ##设置默认的AMQP 0-9-1心跳间隔(以秒为单位)。

    ##相关文档指南:

    ##

    ## * https://rabbitmq.com/heartbeats.html

    ## * https://rabbitmq.com/networking.html

    ##

    #heartbeat = 60

     

    ##设置AMQP帧的最大允许大小(以字节为单位)。

    ##

    #frame_max = 131072

     

    ##设置连接前服务器将接受的最大帧大小

    ##发生调整

    ##

    #initial_frame_max = 4096

     

    ##设置每个连接允许的最大通道数。

    ## 0表示“无限制”。

    ##

    #channel_max = 128

     

    ##自定义TCP侦听器(套接字)配置。

    ##

    ##相关文档指南:

    ##

    ## * https://rabbitmq.com/networking.html

    ## * https://www.erlang.org/doc/man/inet.html#setopts-2

    ##

     

    #tcp_listen_options.backlog = 128

    #tcp_listen_options.nodelay = true

    #tcp_listen_options.exit_on_close = false

    #tcp_listen_options.keepalive = true

    #tcp_listen_options.send_timeout = 15000

    #tcp_listen_options.buffer = 196608

    #tcp_listen_options.sndbuf = 196608

    #tcp_listen_options.recbuf = 196608

     

    ##

    ##资源限制和流控制

    ## =============================

    ##

    ##相关文档指南:https://rabbitmq.com/memory.html。

     

    ##基于内存的流控制阈值。

    ##

    #vm_memory_high_watermark.relative = 0.4

     

    ##另外,我们可以设置节点使用的RAM的限制(以字节为单位)。

    ##

    #vm_memory_high_watermark.absolute = 1073741824

     

    ##或者您可以使用存储单元(RabbitMQ 3.6.0+)设置绝对值。

    ##如果定义了relative,则将忽略绝对水印!

    ##

    #vm_memory_high_watermark.absolute = 2GB

    ##

    ##支持的单位符号:

    ##

    ## k,kiB:千字节(2 ^ 10-1,024字节)

    ## M,MiB:兆字节(2 ^ 20-1,048,576字节)

    ## G,GiB:千兆字节(2 ^ 30-1,073,741,824字节)

    ## kB:千字节(10 ^ 3-1,000字节)

    ## MB:兆字节(10 ^ 6-1,000,000字节)

    ## GB:千兆字节(10 ^ 9-1,000,000,000字节)

     

     

     

    ##队列开始到达的水印上限的分数

    ##页面消息输出到光盘上以释放内存。

    ##例如,当vm_memory_high_watermark设置为0.4且此值设置为0.5时,

    ##分页最早可在节点使用总可用RAM的20%时开始。

    ##

    ##大于1.0的值可能很危险,应谨慎使用。

    ##

    ##替代方法之一是使用持久队列并发布消息

    ##表示永久(交付模式= 2)。通过这种组合,队列将

    ##将消息更快地移动到磁盘。

    ##

    ##另一种选择是配置队列以分页所有消息(两者

    ##永久性和瞬态)尽快转移到磁盘

    ##,请参阅https://rabbitmq.com/lazy-queues.html。

    ##

    #vm_memory_high_watermark_paging_ratio = 0.5

     

    ##选择Erlang VM内存消耗计算策略。可以被“分配”,“ rss”或“旧版”(别名为“ erlang”),

    ##在3.6.11中引入。从3.6.12开始,默认为`rss`。

    ##参见https://github.com/rabbitmq/rabbitmq-server/issues/1223和rabbitmq / rabbitmq-common#224了解背景。

    #vm_memory_calculation_strategy = rss

     

    ##我们执行内存检查的时间间隔(以毫秒为单位)

    ##水平与水印。

    ##

    #memory_monitor_interval = 2500

     

    ##可用的总内存可以从OS资源中计算得出

    ##-默认选项-或作为配置参数提供。

    #total_memory_available_override_value = 2GB

     

    ##设置磁盘可用限制(以字节为单位)。一旦可用磁盘空间达到此值

    ##下限,将设置磁盘警报-请参阅文档

    ##上面列出了更多详细信息。

    ##

    ##如果定义了relative,则将忽略绝对水印!

    #disk_free_limit.absolute = 50000

     

    ##或者您可以使用内存单位进行设置(与vm_memory_high_watermark中的相同)

    ##使用RabbitMQ 3.6.0+。

    #disk_free_limit.absolute = 500KB

    #disk_free_limit.absolute = 50mb

    #disk_free_limit.absolute = 5GB

     

    ##另外,我们可以设置相对于总可用RAM的限制。

    ##

    ##低于1.0的值可能很危险,应谨慎使用。

    #disk_free_limit.relative = 2.0

     

    ##

    ##聚类

    ## =====================

    ##

    #cluster_partition_handling = ignore

     

    ## pause_if_all_down策略需要其他配置

    #cluster_partition_handling = pause_if_all_down

     

    ##恢复策略。可以是“autoheal”或“ignore”

    #cluster_partition_handling.pause_if_all_down.recover = ignore

     

    ##要检查的节点名称

    #cluster_partition_handling.pause_if_all_down.nodes.1 = rabbit@localhost

    #cluster_partition_handling.pause_if_all_down.nodes.2 = hare@localhost

     

    ##在邮件中镜像同步批处理大小。增加此速度将加快

    ##向上同步,但批处理总大小(以字节为单位)不得超过2 GiB。

    ##在RabbitMQ 3.6.0或更高版本中可用。

    ##

    #mirroring_sync_batch_size = 4096

     

    ##使集群在启动时“automatically”发生。仅适用

    ##到刚重置或首次启动的节点。

    ##

    ##相关文档指南:https://rabbitmq.com//cluster-formation.html

    ##

     

    #cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config

    #cluster_formation.classic_config.nodes.1 = rabbit1@hostname

    #cluster_formation.classic_config.nodes.2 = rabbit2@hostname

    #cluster_formation.classic_config.nodes.3 = rabbit3@hostname

    #cluster_formation.classic_config.nodes.4 = rabbit4@hostname

     

    ##基于DNS的对等发现。该后端将列出A条记录

    ##配置的主机名,并执行反向查询

    ##返回的地址。

     

    #cluster_formation.peer_discovery_backend = rabbit_peer_discovery_dns

    #cluster_formation.dns.hostname = Discovery.eng.example.local

     

    ##可以配置此节点的类型。如果不确定

    ##使用哪种节点类型,始终使用'disc'。

    #cluster_formation.node_type = disc

     

    ##我们发送保持活动消息的时间间隔(以毫秒为单位)

    ##其他集群成员。请注意,这不是同一件事

    ##为net_ticktime; 错过的keepalive消息不会导致节点

    ##被认为是失败的。

    ##

    #cluster_keepalive_interval = 10000

     

    ##

    ##统计资料收集

    ## =====================

    ##

     

    ##统计信息收集间隔(以毫秒为单位)。越来越多

    ##这将减少管理数据库上的负载。

    ##

    #collect_statistics_interval = 5000

     

    ##精细与粗略统计

    #此值不再意味着可以直接配置。

    #参见https://www.rabbitmq.com/management.html#fine-stats。

     

    ##

    ## Ra设置

    ## =====================

    ##

    #raft.segment_max_entries = 65536

    #raft.wal_max_size_bytes = 1048576

    #raft.wal_max_batch_size = 4096

    #raft.snapshot_chunk_size = 1000000

     

    ##

    ##其他/高级选项

    ## =====================

    ##

    ##注意:仅当您了解自己在做什么时,才可以更改这些内容!

    ##

     

    ##等待群集中的Mnesia表使用超时

    ##可用。

    ##

    #mnesia_table_loading_retry_timeout = 30000

     

    ##在集群启动中等待Mnesia表时重试。注意

    ##此设置不适用于Mnesia升级或节点删除。

    ##

    #mnesia_table_loading_retry_limit = 10

     

    ##大小(以字节为单位),低于该大小将消息嵌入队列索引中。

    ##相关文档指南:https://rabbitmq.com/persistence-conf.html

    ##

    #queue_index_embed_msgs_below = 4096

     

    ##您也可以以存储单位设置此大小

    ##

    #queue_index_embed_msgs_below = 4kb

     

    ##是否为所有人启用后台定期强制GC运行

    ## Erlang在“等待”状态的节点上进行处理。

    ##

    ##禁用后台GC可以减少客户端操作的延迟,

    ##保持启用状态可能会减少二进制堆的平均RAM使用量

    ##(请参阅https://www.erlang-solutions.com/blog/erlang-garbage-collector.html)。

    ##

    ##在尝试此选项之前,请先看一下内存

    ##故障(https://www.rabbitmq.com/memory-use.html)。

    ##

    #background_gc_enabled = false

     

    ##我们运行后台GC的目标(期望)间隔(以毫秒为单位)。

    ##实际间隔将根据执行所需的时间而有所不同

    ##操作(可以大于此间隔)。值小于

    ##不建议使用30000毫秒。

    ##

    #background_gc_target_interval = 60000

     

    ##是否启用代理协议支持。

    ##一旦启用,客户端将无法直接连接到代理

    ##了。他们必须通过负载平衡器进行连接,该负载平衡器会将

    ##在连接时到代理的代理协议标头。

    ##此设置仅适用于AMQP客户端,其他协议

    ##像MQTT或STOMP都有自己的设置来启用代理协议。

    ##有关更多信息,请参阅插件文档。

    ##

    #proxy_protocol = false

     

    ##覆盖产品名称和版本。

    ##默认设置为“ RabbitMQ”和发行版本。

    #product.name = RabbitMQ

    #product.version = 1.2.3

     

    ##“每日消息”文件。

    ##其内容用于扩展已记录和打印的横幅。

    ##在Unix上默认为/etc/rabbitmq/motd,%APPDATA%RabbitMQmotd.txt

    ##在Windows上。

    #motd_file = /etc/rabbitmq/motd

     

    ## ------------------------------------------------ ----------------------------

    ##高级Erlang网络/群集选项。

    ##

    ##相关文档指南:https://rabbitmq.com/clustering.html

    ## ------------------------------------------------ ----------------------------

     

    #======================================

    #内核部分

    #======================================

     

    ##超时用于检测对等不可用性,包括CLI工具。

    ##相关文档指南:https://www.rabbitmq.com/nettick.html。

    ##

    #net_ticktime = 60

     

    ##节点间通信端口范围。

    ##参数inet_dist_listen_min和inet_dist_listen_max

    ##只能以经典配置格式进行配置。

    ##相关文档指南:https://www.rabbitmq.com/networking.html#epmd-inet-dist-port-range。

     

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ管理插件

    ##

    ##相关文档指南:https://rabbitmq.com/management.html。

    ## ------------------------------------------------ ----------------------------

     

    #=======================================

    #管理部分

    #=======================================

     

    ##从以下JSON文件中预加载架构定义。

    ##相关文档指南:https://rabbitmq.com/management.html#load-definitions。

    ##

    #management.load_definitions = /path/to/exported/definitions.json

     

    ##将对管理HTTP API的所有请求记录到文件中。

    ##

    #management.http_log_dir = /path/to/access.log

     

    ## HTTP侦听器和嵌入式Web服务器设置。

    ###有关详细信息,请参见https://rabbitmq.com/management.html。

    #management.tcp.port = 15672

    #management.tcp.ip = 0.0.0.0

    #management.tcp.shutdown_timeout = 7000

    #management.tcp.max_keepalive = 120

    #management.tcp.idle_timeout = 120

    #management.tcp.inactivity_timeout = 120

    #management.tcp.request_timeout = 120

    #management.tcp.compress = true

     

    ## HTTPS侦听器设置。

    ##有关详细信息,请参见https://rabbitmq.com/management.html和https://rabbitmq.com/ssl.html。

    ##

    #management.ssl.port = 15671

    #management.ssl.cacertfile = /path/to/ca_certificate.pem

    #management.ssl.certfile = /path/to/server_certificate.pem

    #management.ssl.keyfile = /path/to/server_key.pem

     

    ##更多TLS选项

    #management.ssl.honor_cipher_order = true

    #management.ssl.honor_ecc_order = true

    #management.ssl.client_renegotiation = false

    #management.ssl.secure_renegotiate = true

     

    ##支持的TLS版本

    #management.ssl.versions.1 = tlsv1.2

    #management.ssl.versions.2 = tlsv1.1

     

    ##允许服务器使用的密码套件

    #management.ssl.ciphers.1 = ECDHE-ECDSA-AES256-GCM-SHA384

    #management.ssl.ciphers.2 = ECDHE-RSA-AES256-GCM-SHA384

    #management.ssl.ciphers.3 = ECDHE-ECDSA-AES256-SHA384

    #management.ssl.ciphers.4 = ECDHE-RSA-AES256-SHA384

    #management.ssl.ciphers.5 = ECDH-ECDSA-AES256-GCM-SHA384

    #management.ssl.ciphers.6 = ECDH-RSA-AES256-GCM-SHA384

    #management.ssl.ciphers.7 = ECDH-ECDSA-AES256-SHA384

    #management.ssl.ciphers.8 = ECDH-RSA-AES256-SHA384

    #management.ssl.ciphers.9 = DHE-RSA-AES256-GCM-SHA384

     

    ## HTTP API和管理UI的URL路径前缀

    #management.path_prefix = /a-prefix

     

    ##“basic”,“detailed”或“none”之一。看到

    ## https://rabbitmq.com/management.html#fine-stats了解更多详细信息。

    #management.rates_mode = basic

     

    ##配置聚合数据的时间(例如消息速率和队列)

    ##个长度)被保留。请阅读的插件文档

    ## https://rabbitmq.com/management.html#configuration了解更多

    ## 细节。

    ##您可以使用“minute”,“hour”和“day”键或整数键(以秒为单位)

    #management.sample_retention_policies.global.minute = 5

    #management.sample_retention_policies.global.hour = 60

    #management.sample_retention_policies.global.day = 1200

     

    #management.sample_retention_policies.basic.minute = 5

    #management.sample_retention_policies.basic.hour = 60

     

    #management.sample_retention_policies.detailed.10 = 5

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ Shovel插件

    ##

    ##相关文档指南:https://rabbitmq.com/shovel.html

    ## ------------------------------------------------ ----------------------------

     

    ##有关Shovel插件的示例,请参见advanced.config.example

     

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ STOMP插件

    ##

    ##相关文档指南:https://rabbitmq.com/stomp.html

    ## ------------------------------------------------ ----------------------------

     

    #=======================================

    #STOMP部分

    #=======================================

     

    ##有关详细信息,请参见https://rabbitmq.com/stomp.html。

     

    ## TCP侦听器。

    ##

    #stomp.listeners.tcp.1 = 127.0.0.1:61613

    #stomp.listeners.tcp.2 = :: 1:61613

     

    ## TCP侦听器设置

    ##

    #stomp.tcp_listen_options.backlog = 2048

    #stomp.tcp_listen_options.recbuf = 131072

    #stomp.tcp_listen_options.sndbuf = 131072

    #stomp.tcp_listen_options.keepalive = true

    #stomp.tcp_listen_options.nodelay = true

    #stomp.tcp_listen_options.exit_on_close = true

    #stomp.tcp_listen_options.send_timeout = 120

     

    ##代理协议支持

    ##

    #stomp.proxy_protocol = false

     

    ## TLS侦听器

    ##有关详细信息,请参见https://rabbitmq.com/stomp.html和https://rabbitmq.com/ssl.html。

    #stomp.listeners.ssl.default = 61614

    #ssl_options.cacertfile = path/to/cacert.pem

    #ssl_options.certfile = path/to/cert.pem

    #ssl_options.keyfile = path/to/key.pem

    #ssl_options.verify = verify_peer

    #ssl_options.fail_if_no_peer_cert = true

     

     

    ##将接受TCP连接的Erlang进程数

    ##和TLS侦听器。

    ##

    #stomp.num_acceptors.tcp = 10

    #stomp.num_acceptors.ssl = 1

     

    ##其他TLS选项

     

    ##使用TLS时从客户端证书中提取名称。

    ##

    #stomp.ssl_cert_login = true

     

    ##设置默认的用户名和密码。这用作默认登录名

    ##每当CONNECT框架忽略登录名和密码标头时。

    ##

    ##请注意,设置此选项将允许客户端连接而无需

    ##正在验证!

    ##

    #stomp.default_user = guest

    #stomp.default_pass = guest

     

    ##如果配置了默认用户,或者您已配置使用TLS客户端

    ##基于证书的身份验证,您可以选择允许客户端

    ##完全省略CONNECT框架。如果设置为true,则客户端为

    ##自动连接为默认用户或

    只要会话中发送的第一帧不是

    ## CONNECT框架。

    ##

    #stomp.implicit_connect = true

     

    ##是否启用代理协议支持。

    ##一旦启用,客户端将无法直接连接到代理

    ##了。他们必须通过负载平衡器进行连接,该负载平衡器会将

    ##在连接时到代理的代理协议标头。

    ##此设置仅适用于STOMP客户端,其他协议

    像MQTT或AMQP这样的##具有自己的设置以启用代理协议。

    ##有关更多信息,请参阅插件或代理文档。

    ##

    #stomp.proxy_protocol = false

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ MQTT适配器

    ##

    ##参见https://github.com/rabbitmq/rabbitmq-mqtt/blob/stable/README.md

    ##了解详情

    ## ------------------------------------------------ ----------------------------

     

    #=======================================

    #MQTT部分

    #=======================================

     

    ## TCP侦听器设置。

    ##

    #mqtt.listeners.tcp.1 = 127.0.0.1:61613

    #mqtt.listeners.tcp.2 = :: 1:61613

     

    ## TCP侦听器选项(根据代理配置)。

    ##

    #mqtt.tcp_listen_options.backlog = 4096

    #mqtt.tcp_listen_options.recbuf = 131072

    #mqtt.tcp_listen_options.sndbuf = 131072

    #mqtt.tcp_listen_options.keepalive = true

    #mqtt.tcp_listen_options.nodelay = true

    #mqtt.tcp_listen_options.exit_on_close = true

    #mqtt.tcp_listen_options.send_timeout = 120

     

    ## TLS侦听器设置

    ## ##有关详细信息,请参见https://rabbitmq.com/mqtt.html和https://rabbitmq.com/ssl.html。

    #mqtt.listeners.ssl.default = 8883

    #ssl_options.cacertfile = /path/to/tls/ca_certificate_bundle.pem

    #ssl_options.certfile = /path/to/tls/server_certificate.pem

    #ssl_options.keyfile = /path/to/tls/server_key.pem

    #ssl_options.verify = verify_peer

    #ssl_options.fail_if_no_peer_cert = true

     

     

    ##将接受TCP连接的Erlang进程数

    ##和TLS侦听器。

    ##

    #mqtt.num_acceptors.tcp = 10

    #mqtt.num_acceptors.ssl = 10

     

    ##是否启用代理协议支持。

    ##一旦启用,客户端将无法直接连接到代理

    ##了。他们必须通过负载平衡器进行连接,该负载平衡器会将

    ##在连接时到代理的代理协议标头。

    ##此设置仅适用于STOMP客户端,其他协议

    ##(如STOMP或AMQP)具有自己的设置以启用代理协议。

    ##有关更多信息,请参阅插件或代理文档。

    ##

    #mqtt.proxy_protocol = false

     

    ##设置用于匿名连接的默认用户名和密码(当客户端

    ##不提供凭据)。强烈建议不要使用匿名连接!

    ##

    #mqtt.default_user = guest

    #mqtt.default_pass = guest

     

    ##启用匿名连接。如果将其设置为false,则客户必须提供

    ##凭据才能连接。另请参见mqtt.default_user / mqtt.default_pass

    ##键。强烈建议不要使用匿名连接!

    ##

    #mqtt.allow_anonymous = true

     

    ##如果您有多个虚拟主机,请指定一个虚拟主机

    ##适配器连接。

    ##

    #mqtt.vhost = /

     

    ##指定将来自MQTT客户端的消息发布到的交换。

    ##

    #mqtt.exchange = amq.topic

     

    ##指定TTL(生存时间)以控制非清除会话的生存期。

    ##

    #mqtt.subscription_ttl = 1800000

     

    ##设置预取计数(管理未确认的最大数量

    ##将要传递的消息)。

    ##

    #mqtt.prefetch = 10

     

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ AMQP 1.0支持

    ##

    ##参见https://github.com/rabbitmq/rabbitmq-amqp1.0/blob/stable/README.md。

    ## ------------------------------------------------ ----------------------------

     

    #=======================================

    #AMQP 1.0部分

    #=======================================

     

     

    ##未经SASL认证的连接将以此连接

    ##帐户。有关更多信息,请参见自述文件。

    ##

    ##请注意,设置此选项将允许客户端连接而无需

    ##正在验证!

    ##

    #amqp1_0.default_user = guest

     

    ##启用协议严格模式。有关更多信息,请参见自述文件。

    ##

    #amqp1_0.protocol_strict_mode = false

     

    ##记录设置。

    ##

    ##有关详细信息,请参见https://rabbitmq.com/logging.html和https://github.com/erlang-lager/lager。

    ##

     

    ##日志目录,默认情况下来自RABBITMQ_LOG_BASE env变量。

    ##

    #log.dir = /var/log/rabbitmq

     

    ##记录到文件。可以为false或文件名。

    ##默认值:

    #log.file = rabbit.log

     

    ##禁用记录到文件

    #log.file = false

     

    ##文件记录的日志级别

    ##

    #log.file.level = info

     

    ##文件旋转配置。默认情况下不旋转。

    ##请勿将轮播日期设置为“”。如果“”是所需值,则不设置该值

    #log.file.rotation.date = $D0

    #log.file.rotation.size = 0

     

    ##登录到控制台(可以为true或false)

    ##

    #log.console = false

     

    ##控制台日志的日志级别

    ##

    #log.console.level = info

     

    ##登录到amq.rabbitmq.log交换(可以为true或false)

    ##

    #log.exchange = false

     

    ##登录到amq.rabbitmq.log交换时使用的日志级别

    ##

    #log.exchange.level = info

     

     

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ LDAP插件

    ##

    ##相关文档指南:https://rabbitmq.com/ldap.html。

    ##

    ## ------------------------------------------------ ----------------------------

     

    #=======================================

    #LDAP部分

    #=======================================

     

    ##

    ##连接到LDAP服务器

    ## ===============================

    ##

     

    ##指定要绑定的服务器。您*必须*为此设置插件

    ##正常工作。

    ##

    #auth_ldap.servers.1 = your-server-name-goes-here

     

    ##您可以定义多个服务器

    #auth_ldap.servers.2 = your-other-server

     

    ##使用TLS连接到LDAP服务器

    ##

    #auth_ldap.use_ssl = false

     

    ##指定要连接的LDAP端口

    ##

    #auth_ldap.port = 389

     

    ## LDAP连接超时,以毫秒或“infinity”为单位

    ##

    #auth_ldap.timeout = infinity

     

    ##或数字

    #auth_ldap.timeout = 500

     

    ##启用LDAP查询的日志记录。

    ##其中之一

    ##-假(不执行任何日志记录)

    ##-true(详细记录插件使用的逻辑)

    ##-网络(确实如此,但还会记录LDAP网络流量)

    ##

    ##默认为false。

    ##

    #auth_ldap.log = false

     

    ##也可以是true或network

    #auth_ldap.log = true

    #auth_ldap.log = network

     

    ##

    ##身份验证

    ## ==============

    ##

     

    ##模式,用于将AMQP提供的用户名转换为DN之前的名称

    ## 捆绑

    ##

    #auth_ldap.user_dn_pattern = cn=${username},ou=People,dc=example,dc=com

     

    ##或者,您可以将用户名转换为杰出

    ##绑定后通过LDAP查找进行命名。请参阅有关的文档

    ##详细信息。

     

    ##通过查找将用户名转换为dn时,请将其设置为

    ##代表用户名的属性名称,以及

    ##查找查询的基本DN。

    ##

    #auth_ldap.dn_lookup_attribute = userPrincipalName

    #auth_ldap.dn_lookup_base = DC=gopivotal,DC=com

     

    ##控制如何绑定授权查询以及如何绑定

    ##检索未登录的用户的详细信息

    ##密码(例如SASL EXTERNAL)。

    ##其中之一

    ##-as_user(绑定为经过身份验证的用户-需要密码)

    ##-anon(匿名绑定)

    ##-{UserDN,Password}(用于绑定指定的用户名和密码)

    ##

    ##默认为'as_user'。

    ##

    #auth_ldap.other_bind = as_user

     

    ##或者可以更复杂:

    #auth_ldap.other_bind.user_dn = User

    #auth_ldap.other_bind.password = Password

     

    ##如果定义了user_dn和密码-其他选项将被忽略。

     

    #-----------------------------

    #LDAP的复杂部分

    #-----------------------------

     

    ##

    ##授权

    ## =============

    ##

     

    ## LDAP插件可以针对您的服务器执行各种查询

    ## LDAP服务器确定授权问题。

    ##

    ##相关文档指南:https://rabbitmq.com/ldap.html#authorisation。

     

    ##以下配置应在advanced.config文件中定义

    ##不要取消注释这些行!

     

    ##设置要在确定虚拟主机访问权限时使用的查询

    ##

    ## {vhost_access_query,{in_group,

    ##"ou=${vhost}-users,ou=vhosts,d=example,dc=com"}},

     

    ##设置要在确定资源(例如队列)访问时使用的查询

    ##

    ## {resource_access_query,{constant,true}},

     

    ##设置查询以确定用户拥有哪些标签

    ##

    ## {tag_queries,[]}

    #]},

    #-----------------------------

    github链接:https://github.com/rabbitmq/rabbitmq-server/blob/master/docs/rabbitmq.conf.example

    #======================================

    #RabbitMQ经纪人部分

    #======================================

    ##相关文档指南:https://rabbitmq.com/configure.html。看到

    ## https://rabbitmq.com/documentation.html以获得文档ToC。

    ## 联网

    ## ====================

    ##

    ##相关文档指南:https://rabbitmq.com/networking.html。

    ##

    ##默认情况下,RabbitMQ将使用

    ##标准(保留)AMQP 0-9-1和1.0端口。

    ##

    #listeners.tcp.default = 5672

    ##要侦听特定接口,请提供带有端口的IP地址。

    ##例如,仅在本地主机上侦听IPv4和IPv6:

    ##

    #IPv4

    #listeners.tcp.local = 127.0.0.1:5672

    #IPv6

    #listeners.tcp.local_v6 = :: 1:5672

    ##您可以使用侦听器名称定义多个侦听器

    #listeners.tcp.other_port = 5673

    #listeners.tcp.other_ip = 10.10.10.10:5672

     

    ## TLS侦听器的配置方式与TCP侦听器相同,

    ##包括控制界面选择的选项。

    ##

    #listeners.ssl.default = 5671

     

    ##可以禁用常规的TCP(非TLS)侦听器。客户群

    ##未配置为使用TLS,并且正确的启用TLS的端口将无法使用

    ##连接到该节点。

    #listeners.tcp = none

     

    ##将接受TCP连接的Erlang进程数

    ##和TLS侦听器。

    ##

    #num_acceptors.tcp = 10

    #num_acceptors.ssl = 10

     

    ##套接字编写器将每传输这么多字节就强制GC。

    ##默认值为1 GiB(`1000000000`)。设置为“关闭”以禁用。

    ##

    #socket_writer.gc_threshold = 1000000000

    ##禁用:

    #socket_writer.gc_threshold = off

     

    ## AMQP 0-9-1和AMQP 1.0握手允许的最长时间

    ##(在套接字连接和TLS握手之后执行)以毫秒为单位完成。

    ##

    #handshake_timeout = 10000

     

    ##设置为“ true”以在接受以下内容时执行反向DNS查找

    ##连接。然后,rabbitmqctl和管理UI将显示主机名

    ##而不是IP地址。默认值为“ false”。

    ##

    #reverse_dns_lookups = false

     

    ##

    ##安全性,访问控制

    ## ==============

    ##

     

    ##相关文档指南:https://rabbitmq.com/access-control.html。

     

    ##仅允许默认的“ guest”用户访问服务器

    ##通过回送接口(例如localhost)。

    ## {loopback_users,[<<“ guest” >>]},

    ##

    #loopback_users.guest = true

     

    ##如果要允许访问以下内容,请取消注释以下行:

    来自网络上任何地方的##位来宾用户。

    #loopback_users.guest = false

     

    ## TLS配置。

    ##

    ##相关文档指南:https://rabbitmq.com/ssl.html。

    ##

    #ssl_options.verify = verify_peer

    #ssl_options.fail_if_no_peer_cert = false

    #ssl_options.cacertfile = /path/to/cacert.pem

    #ssl_options.certfile = /path/to/cert.pem

    #ssl_options.keyfile = /path/to/key.pem

    #ssl_options.honor_cipher_order = true

    #ssl_options.honor_ecc_order = true

     

    #ssl_options.ciphers.1 = ECDHE-ECDSA-AES256-GCM-SHA384

    #ssl_options.ciphers.2 = ECDHE-RSA-AES256-GCM-SHA384

    #ssl_options.ciphers.3 = ECDHE-ECDSA-AES256-SHA384

    #ssl_options.ciphers.4 = ECDHE-RSA-AES256-SHA384

    #ssl_options.ciphers.5 = ECDH-ECDSA-AES256-GCM-SHA384

    #ssl_options.ciphers.6 = ECDH-RSA-AES256-GCM-SHA384

    #ssl_options.ciphers.7 = ECDH-ECDSA-AES256-SHA384

    #ssl_options.ciphers.8 = ECDH-RSA-AES256-SHA384

    #ssl_options.ciphers.9 = DHE-RSA-AES256-GCM-SHA384

    #ssl_options.ciphers.10 = DHE-DSS-AES256-GCM-SHA384

    #ssl_options.ciphers.11 = DHE-RSA-AES256-SHA256

    #ssl_options.ciphers.12 = DHE-DSS-AES256-SHA256

    #ssl_options.ciphers.13 = ECDHE-ECDSA-AES128-GCM-SHA256

    #ssl_options.ciphers.14 = ECDHE-RSA-AES128-GCM-SHA256

    #ssl_options.ciphers.15 = ECDHE-ECDSA-AES128-SHA256

    #ssl_options.ciphers.16 = ECDHE-RSA-AES128-SHA256

    #ssl_options.ciphers.17 = ECDH-ECDSA-AES128-GCM-SHA256

    #ssl_options.ciphers.18 = ECDH-RSA-AES128-GCM-SHA256

    #ssl_options.ciphers.19 = ECDH-ECDSA-AES128-SHA256

    #ssl_options.ciphers.20 = ECDH-RSA-AES128-SHA256

    #ssl_options.ciphers.21 = DHE-RSA-AES128-GCM-SHA256

    #ssl_options.ciphers.22 = DHE-DSS-AES128-GCM-SHA256

    #ssl_options.ciphers.23 = DHE-RSA-AES128-SHA256

    #ssl_options.ciphers.24 = DHE-DSS-AES128-SHA256

    #ssl_options.ciphers.25 = ECDHE-ECDSA-AES256-SHA

    #ssl_options.ciphers.26 = ECDHE-RSA-AES256-SHA

    #ssl_options.ciphers.27 = DHE-RSA-AES256-SHA

    #ssl_options.ciphers.28 = DHE-DSS-AES256-SHA

    #ssl_options.ciphers.29 = ECDH-ECDSA-AES256-SHA

    #ssl_options.ciphers.30 = ECDH-RSA-AES256-SHA

    #ssl_options.ciphers.31 = ECDHE-ECDSA-AES128-SHA

    #ssl_options.ciphers.32 = ECDHE-RSA-AES128-SHA

    #ssl_options.ciphers.33 = DHE-RSA-AES128-SHA

    #ssl_options.ciphers.34 = DHE-DSS-AES128-SHA

    #ssl_options.ciphers.35 = ECDH-ECDSA-AES128-SHA

    #ssl_options.ciphers.36 = ECDH-RSA-AES128-SHA

     

    ##选择要使用的身份验证/授权后端。

    ##

    ##替代后端由插件提供,例如rabbitmq-auth-backend-ldap。

    ##

    ##注意:这些设置需要启用某些插件。

    ##

    ##相关文档指南:

    ##

    ## * https://rabbitmq.com/plugins.html

    ## * https://rabbitmq.com/access-control.html

    ##

     

    #auth_backends.1 = Rabbit_auth_backend_internal

     

    ##使用单独的后端进行身份验证和授权,

    ## 见下文。

    #auth_backends.1.authn = rabbit_auth_backend_ldap

    #auth_backends.1.authz = rabbit_auth_backend_internal

     

    ## Rabbitmq_auth_backend_ldap插件允许经纪人执行以下操作:

    ##通过延迟验证和授权

    ##外部LDAP服务器。

    ##

    ##相关文档指南:

    ##

    ## * https://rabbitmq.com/ldap.html

    ## * https://rabbitmq.com/access-control.html

    ##

    ##使用LDAP进行身份验证和授权

    #auth_backends.1 = Rabbit_auth_backend_ldap

     

    ##使用HTTP服务进行身份验证和

    ##授权

    #auth_backends.1 = rabbit_auth_backend_http

     

    ##在链中使用两个后端:首先使用HTTP,然后使用内部

    #auth_backends.1 = rabbit_auth_backend_http

    #auth_backends.2 = Rabbit_auth_backend_internal

     

    ##身份验证

    ##内置机制为“普通”,

    ##'AMQPLAIN'和'EXTERNAL'其他机制可以通过添加

    ##插件。

    ##

    ##相关文档指南:https://rabbitmq.com/authentication.html。

    ##

    #auth_mechanisms.1 = PLAIN

    #auth_mechanisms.2 = AMQPLAIN

     

    ## Rabbitmq-auth-mechanism-ssl插件可以实现

    ##根据客户端的x509(TLS)证书对用户进行身份验证。

    ##相关文档指南:https://rabbitmq.com/authentication.html。

    ##

    ##要使用auth-mechanism-ssl,EXTERNAL机制应

    ##被启用:

    ##

    #auth_mechanisms.1 = PLAIN

    #auth_mechanisms.2 = AMQPLAIN

    #auth_mechanisms.3 = EXTERNAL

     

    ##要在所有客户端上强制执行基于x509证书的身份验证,

    ##排除所有其他机制(注意:这将禁用基于密码的

    ##身份验证,甚至用于管理UI!):

    ##

    #auth_mechanisms.1 = EXTERNAL

     

    ##这与rabbitmq-auth-mechanism-ssl插件和

    ## STOMP ssl_cert_login配置。参见RabbitMQ STOMP插件

    此文件后面的##配置部分和README中的内容

    ## https://github.com/rabbitmq/rabbitmq-auth-mechanism-ssl进一步

    ## 细节。

    ##

    ##使用TLS证书的CN代替其DN作为用户名

    ##

    #ssl_cert_login_from = common_name

     

    ## TLS握手超时,以毫秒为单位。

    ##

    #ssl_handshake_timeout = 5000

     

     

    ##群集名称

    ##

    #cluster_name = dev3.eng.megacorp.local

     

    ##密码哈希实现。只会影响新的

    ##个创建用户。重新计算现有用户的哈希

    ##必须更新她的密码。

    ##

    ##要使用SHA-512,请设置为rabbit_password_hashing_sha512。

    ##

    #password_hashing_module = rabbit_password_hashing_sha256

     

    ##导入从早期版本导出的定义时

    ##高于3.6.0,可以返回到MD5(仅执行此操作

    ##作为临时措施!),将其设置为rabbit_password_hashing_md5。

    ##

    #password_hashing_module = rabbit_password_hashing_md5

     

    ##

    ##默认用户/ VHost

    ## ====================

    ##

     

    ##首次启动RabbitMQ将创建一个虚拟主机和一个用户。这些

    ##配置项控制要创建的内容。

    ##相关文档指南:https://rabbitmq.com/access-control.html

    ##

    #default_vhost = /

    #default_user = guest

    #default_pass = guest

     

    #default_permissions.configure = .*

    #default_permissions.read = .*

    #default_permissions.write = .*

     

    ##默认用户的标签

    ##

    ##有关标签的更多详细信息,请参见

    ##管理插件,网址为https://rabbitmq.com/management.html。

    ##

    #default_user_tags.administrator = true

     

    ##定义其他标签,如下所示:

    #default_user_tags.management = true

    #default_user_tags.custom_tag = true

     

    ##

    ##其他与网络和协议相关的配置

    ## ================================================ =====

    ##

     

    ##设置默认的AMQP 0-9-1心跳间隔(以秒为单位)。

    ##相关文档指南:

    ##

    ## * https://rabbitmq.com/heartbeats.html

    ## * https://rabbitmq.com/networking.html

    ##

    #heartbeat = 60

     

    ##设置AMQP帧的最大允许大小(以字节为单位)。

    ##

    #frame_max = 131072

     

    ##设置连接前服务器将接受的最大帧大小

    ##发生调整

    ##

    #initial_frame_max = 4096

     

    ##设置每个连接允许的最大通道数。

    ## 0表示“无限制”。

    ##

    #channel_max = 128

     

    ##自定义TCP侦听器(套接字)配置。

    ##

    ##相关文档指南:

    ##

    ## * https://rabbitmq.com/networking.html

    ## * https://www.erlang.org/doc/man/inet.html#setopts-2

    ##

     

    #tcp_listen_options.backlog = 128

    #tcp_listen_options.nodelay = true

    #tcp_listen_options.exit_on_close = false

    #tcp_listen_options.keepalive = true

    #tcp_listen_options.send_timeout = 15000

    #tcp_listen_options.buffer = 196608

    #tcp_listen_options.sndbuf = 196608

    #tcp_listen_options.recbuf = 196608

     

    ##

    ##资源限制和流控制

    ## =============================

    ##

    ##相关文档指南:https://rabbitmq.com/memory.html。

     

    ##基于内存的流控制阈值。

    ##

    #vm_memory_high_watermark.relative = 0.4

     

    ##另外,我们可以设置节点使用的RAM的限制(以字节为单位)。

    ##

    #vm_memory_high_watermark.absolute = 1073741824

     

    ##或者您可以使用存储单元(RabbitMQ 3.6.0+)设置绝对值。

    ##如果定义了relative,则将忽略绝对水印!

    ##

    #vm_memory_high_watermark.absolute = 2GB

    ##

    ##支持的单位符号:

    ##

    ## k,kiB:千字节(2 ^ 10-1,024字节)

    ## M,MiB:兆字节(2 ^ 20-1,048,576字节)

    ## G,GiB:千兆字节(2 ^ 30-1,073,741,824字节)

    ## kB:千字节(10 ^ 3-1,000字节)

    ## MB:兆字节(10 ^ 6-1,000,000字节)

    ## GB:千兆字节(10 ^ 9-1,000,000,000字节)

     

     

     

    ##队列开始到达的水印上限的分数

    ##页面消息输出到光盘上以释放内存。

    ##例如,当vm_memory_high_watermark设置为0.4且此值设置为0.5时,

    ##分页最早可在节点使用总可用RAM的20%时开始。

    ##

    ##大于1.0的值可能很危险,应谨慎使用。

    ##

    ##替代方法之一是使用持久队列并发布消息

    ##表示永久(交付模式= 2)。通过这种组合,队列将

    ##将消息更快地移动到磁盘。

    ##

    ##另一种选择是配置队列以分页所有消息(两者

    ##永久性和瞬态)尽快转移到磁盘

    ##,请参阅https://rabbitmq.com/lazy-queues.html。

    ##

    #vm_memory_high_watermark_paging_ratio = 0.5

     

    ##选择Erlang VM内存消耗计算策略。可以被“分配”,“ rss”或“旧版”(别名为“ erlang”),

    ##在3.6.11中引入。从3.6.12开始,默认为`rss`。

    ##参见https://github.com/rabbitmq/rabbitmq-server/issues/1223和rabbitmq / rabbitmq-common#224了解背景。

    #vm_memory_calculation_strategy = rss

     

    ##我们执行内存检查的时间间隔(以毫秒为单位)

    ##水平与水印。

    ##

    #memory_monitor_interval = 2500

     

    ##可用的总内存可以从OS资源中计算得出

    ##-默认选项-或作为配置参数提供。

    #total_memory_available_override_value = 2GB

     

    ##设置磁盘可用限制(以字节为单位)。一旦可用磁盘空间达到此值

    ##下限,将设置磁盘警报-请参阅文档

    ##上面列出了更多详细信息。

    ##

    ##如果定义了relative,则将忽略绝对水印!

    #disk_free_limit.absolute = 50000

     

    ##或者您可以使用内存单位进行设置(与vm_memory_high_watermark中的相同)

    ##使用RabbitMQ 3.6.0+。

    #disk_free_limit.absolute = 500KB

    #disk_free_limit.absolute = 50mb

    #disk_free_limit.absolute = 5GB

     

    ##另外,我们可以设置相对于总可用RAM的限制。

    ##

    ##低于1.0的值可能很危险,应谨慎使用。

    #disk_free_limit.relative = 2.0

     

    ##

    ##聚类

    ## =====================

    ##

    #cluster_partition_handling = ignore

     

    ## pause_if_all_down策略需要其他配置

    #cluster_partition_handling = pause_if_all_down

     

    ##恢复策略。可以是“autoheal”或“ignore”

    #cluster_partition_handling.pause_if_all_down.recover = ignore

     

    ##要检查的节点名称

    #cluster_partition_handling.pause_if_all_down.nodes.1 = rabbit@localhost

    #cluster_partition_handling.pause_if_all_down.nodes.2 = hare@localhost

     

    ##在邮件中镜像同步批处理大小。增加此速度将加快

    ##向上同步,但批处理总大小(以字节为单位)不得超过2 GiB。

    ##在RabbitMQ 3.6.0或更高版本中可用。

    ##

    #mirroring_sync_batch_size = 4096

     

    ##使集群在启动时“automatically”发生。仅适用

    ##到刚重置或首次启动的节点。

    ##

    ##相关文档指南:https://rabbitmq.com//cluster-formation.html

    ##

     

    #cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config

    #cluster_formation.classic_config.nodes.1 = rabbit1@hostname

    #cluster_formation.classic_config.nodes.2 = rabbit2@hostname

    #cluster_formation.classic_config.nodes.3 = rabbit3@hostname

    #cluster_formation.classic_config.nodes.4 = rabbit4@hostname

     

    ##基于DNS的对等发现。该后端将列出A条记录

    ##配置的主机名,并执行反向查询

    ##返回的地址。

     

    #cluster_formation.peer_discovery_backend = rabbit_peer_discovery_dns

    #cluster_formation.dns.hostname = Discovery.eng.example.local

     

    ##可以配置此节点的类型。如果不确定

    ##使用哪种节点类型,始终使用'disc'。

    #cluster_formation.node_type = disc

     

    ##我们发送保持活动消息的时间间隔(以毫秒为单位)

    ##其他集群成员。请注意,这不是同一件事

    ##为net_ticktime; 错过的keepalive消息不会导致节点

    ##被认为是失败的。

    ##

    #cluster_keepalive_interval = 10000

     

    ##

    ##统计资料收集

    ## =====================

    ##

     

    ##统计信息收集间隔(以毫秒为单位)。越来越多

    ##这将减少管理数据库上的负载。

    ##

    #collect_statistics_interval = 5000

     

    ##精细与粗略统计

    #此值不再意味着可以直接配置。

    #参见https://www.rabbitmq.com/management.html#fine-stats。

     

    ##

    ## Ra设置

    ## =====================

    ##

    #raft.segment_max_entries = 65536

    #raft.wal_max_size_bytes = 1048576

    #raft.wal_max_batch_size = 4096

    #raft.snapshot_chunk_size = 1000000

     

    ##

    ##其他/高级选项

    ## =====================

    ##

    ##注意:仅当您了解自己在做什么时,才可以更改这些内容!

    ##

     

    ##等待群集中的Mnesia表使用超时

    ##可用。

    ##

    #mnesia_table_loading_retry_timeout = 30000

     

    ##在集群启动中等待Mnesia表时重试。注意

    ##此设置不适用于Mnesia升级或节点删除。

    ##

    #mnesia_table_loading_retry_limit = 10

     

    ##大小(以字节为单位),低于该大小将消息嵌入队列索引中。

    ##相关文档指南:https://rabbitmq.com/persistence-conf.html

    ##

    #queue_index_embed_msgs_below = 4096

     

    ##您也可以以存储单位设置此大小

    ##

    #queue_index_embed_msgs_below = 4kb

     

    ##是否为所有人启用后台定期强制GC运行

    ## Erlang在“等待”状态的节点上进行处理。

    ##

    ##禁用后台GC可以减少客户端操作的延迟,

    ##保持启用状态可能会减少二进制堆的平均RAM使用量

    ##(请参阅https://www.erlang-solutions.com/blog/erlang-garbage-collector.html)。

    ##

    ##在尝试此选项之前,请先看一下内存

    ##故障(https://www.rabbitmq.com/memory-use.html)。

    ##

    #background_gc_enabled = false

     

    ##我们运行后台GC的目标(期望)间隔(以毫秒为单位)。

    ##实际间隔将根据执行所需的时间而有所不同

    ##操作(可以大于此间隔)。值小于

    ##不建议使用30000毫秒。

    ##

    #background_gc_target_interval = 60000

     

    ##是否启用代理协议支持。

    ##一旦启用,客户端将无法直接连接到代理

    ##了。他们必须通过负载平衡器进行连接,该负载平衡器会将

    ##在连接时到代理的代理协议标头。

    ##此设置仅适用于AMQP客户端,其他协议

    ##像MQTT或STOMP都有自己的设置来启用代理协议。

    ##有关更多信息,请参阅插件文档。

    ##

    #proxy_protocol = false

     

    ##覆盖产品名称和版本。

    ##默认设置为“ RabbitMQ”和发行版本。

    #product.name = RabbitMQ

    #product.version = 1.2.3

     

    ##“每日消息”文件。

    ##其内容用于扩展已记录和打印的横幅。

    ##在Unix上默认为/etc/rabbitmq/motd,%APPDATA%RabbitMQmotd.txt

    ##在Windows上。

    #motd_file = /etc/rabbitmq/motd

     

    ## ------------------------------------------------ ----------------------------

    ##高级Erlang网络/群集选项。

    ##

    ##相关文档指南:https://rabbitmq.com/clustering.html

    ## ------------------------------------------------ ----------------------------

     

    #======================================

    #内核部分

    #======================================

     

    ##超时用于检测对等不可用性,包括CLI工具。

    ##相关文档指南:https://www.rabbitmq.com/nettick.html。

    ##

    #net_ticktime = 60

     

    ##节点间通信端口范围。

    ##参数inet_dist_listen_min和inet_dist_listen_max

    ##只能以经典配置格式进行配置。

    ##相关文档指南:https://www.rabbitmq.com/networking.html#epmd-inet-dist-port-range。

     

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ管理插件

    ##

    ##相关文档指南:https://rabbitmq.com/management.html。

    ## ------------------------------------------------ ----------------------------

     

    #=======================================

    #管理部分

    #=======================================

     

    ##从以下JSON文件中预加载架构定义。

    ##相关文档指南:https://rabbitmq.com/management.html#load-definitions。

    ##

    #management.load_definitions = /path/to/exported/definitions.json

     

    ##将对管理HTTP API的所有请求记录到文件中。

    ##

    #management.http_log_dir = /path/to/access.log

     

    ## HTTP侦听器和嵌入式Web服务器设置。

    ###有关详细信息,请参见https://rabbitmq.com/management.html。

    #management.tcp.port = 15672

    #management.tcp.ip = 0.0.0.0

    #management.tcp.shutdown_timeout = 7000

    #management.tcp.max_keepalive = 120

    #management.tcp.idle_timeout = 120

    #management.tcp.inactivity_timeout = 120

    #management.tcp.request_timeout = 120

    #management.tcp.compress = true

     

    ## HTTPS侦听器设置。

    ##有关详细信息,请参见https://rabbitmq.com/management.html和https://rabbitmq.com/ssl.html。

    ##

    #management.ssl.port = 15671

    #management.ssl.cacertfile = /path/to/ca_certificate.pem

    #management.ssl.certfile = /path/to/server_certificate.pem

    #management.ssl.keyfile = /path/to/server_key.pem

     

    ##更多TLS选项

    #management.ssl.honor_cipher_order = true

    #management.ssl.honor_ecc_order = true

    #management.ssl.client_renegotiation = false

    #management.ssl.secure_renegotiate = true

     

    ##支持的TLS版本

    #management.ssl.versions.1 = tlsv1.2

    #management.ssl.versions.2 = tlsv1.1

     

    ##允许服务器使用的密码套件

    #management.ssl.ciphers.1 = ECDHE-ECDSA-AES256-GCM-SHA384

    #management.ssl.ciphers.2 = ECDHE-RSA-AES256-GCM-SHA384

    #management.ssl.ciphers.3 = ECDHE-ECDSA-AES256-SHA384

    #management.ssl.ciphers.4 = ECDHE-RSA-AES256-SHA384

    #management.ssl.ciphers.5 = ECDH-ECDSA-AES256-GCM-SHA384

    #management.ssl.ciphers.6 = ECDH-RSA-AES256-GCM-SHA384

    #management.ssl.ciphers.7 = ECDH-ECDSA-AES256-SHA384

    #management.ssl.ciphers.8 = ECDH-RSA-AES256-SHA384

    #management.ssl.ciphers.9 = DHE-RSA-AES256-GCM-SHA384

     

    ## HTTP API和管理UI的URL路径前缀

    #management.path_prefix = /a-prefix

     

    ##“basic”,“detailed”或“none”之一。看到

    ## https://rabbitmq.com/management.html#fine-stats了解更多详细信息。

    #management.rates_mode = basic

     

    ##配置聚合数据的时间(例如消息速率和队列)

    ##个长度)被保留。请阅读的插件文档

    ## https://rabbitmq.com/management.html#configuration了解更多

    ## 细节。

    ##您可以使用“minute”,“hour”和“day”键或整数键(以秒为单位)

    #management.sample_retention_policies.global.minute = 5

    #management.sample_retention_policies.global.hour = 60

    #management.sample_retention_policies.global.day = 1200

     

    #management.sample_retention_policies.basic.minute = 5

    #management.sample_retention_policies.basic.hour = 60

     

    #management.sample_retention_policies.detailed.10 = 5

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ Shovel插件

    ##

    ##相关文档指南:https://rabbitmq.com/shovel.html

    ## ------------------------------------------------ ----------------------------

     

    ##有关Shovel插件的示例,请参见advanced.config.example

     

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ STOMP插件

    ##

    ##相关文档指南:https://rabbitmq.com/stomp.html

    ## ------------------------------------------------ ----------------------------

     

    #=======================================

    #STOMP部分

    #=======================================

     

    ##有关详细信息,请参见https://rabbitmq.com/stomp.html。

     

    ## TCP侦听器。

    ##

    #stomp.listeners.tcp.1 = 127.0.0.1:61613

    #stomp.listeners.tcp.2 = :: 1:61613

     

    ## TCP侦听器设置

    ##

    #stomp.tcp_listen_options.backlog = 2048

    #stomp.tcp_listen_options.recbuf = 131072

    #stomp.tcp_listen_options.sndbuf = 131072

    #stomp.tcp_listen_options.keepalive = true

    #stomp.tcp_listen_options.nodelay = true

    #stomp.tcp_listen_options.exit_on_close = true

    #stomp.tcp_listen_options.send_timeout = 120

     

    ##代理协议支持

    ##

    #stomp.proxy_protocol = false

     

    ## TLS侦听器

    ##有关详细信息,请参见https://rabbitmq.com/stomp.html和https://rabbitmq.com/ssl.html。

    #stomp.listeners.ssl.default = 61614

    #ssl_options.cacertfile = path/to/cacert.pem

    #ssl_options.certfile = path/to/cert.pem

    #ssl_options.keyfile = path/to/key.pem

    #ssl_options.verify = verify_peer

    #ssl_options.fail_if_no_peer_cert = true

     

     

    ##将接受TCP连接的Erlang进程数

    ##和TLS侦听器。

    ##

    #stomp.num_acceptors.tcp = 10

    #stomp.num_acceptors.ssl = 1

     

    ##其他TLS选项

     

    ##使用TLS时从客户端证书中提取名称。

    ##

    #stomp.ssl_cert_login = true

     

    ##设置默认的用户名和密码。这用作默认登录名

    ##每当CONNECT框架忽略登录名和密码标头时。

    ##

    ##请注意,设置此选项将允许客户端连接而无需

    ##正在验证!

    ##

    #stomp.default_user = guest

    #stomp.default_pass = guest

     

    ##如果配置了默认用户,或者您已配置使用TLS客户端

    ##基于证书的身份验证,您可以选择允许客户端

    ##完全省略CONNECT框架。如果设置为true,则客户端为

    ##自动连接为默认用户或

    只要会话中发送的第一帧不是

    ## CONNECT框架。

    ##

    #stomp.implicit_connect = true

     

    ##是否启用代理协议支持。

    ##一旦启用,客户端将无法直接连接到代理

    ##了。他们必须通过负载平衡器进行连接,该负载平衡器会将

    ##在连接时到代理的代理协议标头。

    ##此设置仅适用于STOMP客户端,其他协议

    像MQTT或AMQP这样的##具有自己的设置以启用代理协议。

    ##有关更多信息,请参阅插件或代理文档。

    ##

    #stomp.proxy_protocol = false

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ MQTT适配器

    ##

    ##参见https://github.com/rabbitmq/rabbitmq-mqtt/blob/stable/README.md

    ##了解详情

    ## ------------------------------------------------ ----------------------------

     

    #=======================================

    #MQTT部分

    #=======================================

     

    ## TCP侦听器设置。

    ##

    #mqtt.listeners.tcp.1 = 127.0.0.1:61613

    #mqtt.listeners.tcp.2 = :: 1:61613

     

    ## TCP侦听器选项(根据代理配置)。

    ##

    #mqtt.tcp_listen_options.backlog = 4096

    #mqtt.tcp_listen_options.recbuf = 131072

    #mqtt.tcp_listen_options.sndbuf = 131072

    #mqtt.tcp_listen_options.keepalive = true

    #mqtt.tcp_listen_options.nodelay = true

    #mqtt.tcp_listen_options.exit_on_close = true

    #mqtt.tcp_listen_options.send_timeout = 120

     

    ## TLS侦听器设置

    ## ##有关详细信息,请参见https://rabbitmq.com/mqtt.html和https://rabbitmq.com/ssl.html。

    #mqtt.listeners.ssl.default = 8883

    #ssl_options.cacertfile = /path/to/tls/ca_certificate_bundle.pem

    #ssl_options.certfile = /path/to/tls/server_certificate.pem

    #ssl_options.keyfile = /path/to/tls/server_key.pem

    #ssl_options.verify = verify_peer

    #ssl_options.fail_if_no_peer_cert = true

     

     

    ##将接受TCP连接的Erlang进程数

    ##和TLS侦听器。

    ##

    #mqtt.num_acceptors.tcp = 10

    #mqtt.num_acceptors.ssl = 10

     

    ##是否启用代理协议支持。

    ##一旦启用,客户端将无法直接连接到代理

    ##了。他们必须通过负载平衡器进行连接,该负载平衡器会将

    ##在连接时到代理的代理协议标头。

    ##此设置仅适用于STOMP客户端,其他协议

    ##(如STOMP或AMQP)具有自己的设置以启用代理协议。

    ##有关更多信息,请参阅插件或代理文档。

    ##

    #mqtt.proxy_protocol = false

     

    ##设置用于匿名连接的默认用户名和密码(当客户端

    ##不提供凭据)。强烈建议不要使用匿名连接!

    ##

    #mqtt.default_user = guest

    #mqtt.default_pass = guest

     

    ##启用匿名连接。如果将其设置为false,则客户必须提供

    ##凭据才能连接。另请参见mqtt.default_user / mqtt.default_pass

    ##键。强烈建议不要使用匿名连接!

    ##

    #mqtt.allow_anonymous = true

     

    ##如果您有多个虚拟主机,请指定一个虚拟主机

    ##适配器连接。

    ##

    #mqtt.vhost = /

     

    ##指定将来自MQTT客户端的消息发布到的交换。

    ##

    #mqtt.exchange = amq.topic

     

    ##指定TTL(生存时间)以控制非清除会话的生存期。

    ##

    #mqtt.subscription_ttl = 1800000

     

    ##设置预取计数(管理未确认的最大数量

    ##将要传递的消息)。

    ##

    #mqtt.prefetch = 10

     

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ AMQP 1.0支持

    ##

    ##参见https://github.com/rabbitmq/rabbitmq-amqp1.0/blob/stable/README.md。

    ## ------------------------------------------------ ----------------------------

     

    #=======================================

    #AMQP 1.0部分

    #=======================================

     

     

    ##未经SASL认证的连接将以此连接

    ##帐户。有关更多信息,请参见自述文件。

    ##

    ##请注意,设置此选项将允许客户端连接而无需

    ##正在验证!

    ##

    #amqp1_0.default_user = guest

     

    ##启用协议严格模式。有关更多信息,请参见自述文件。

    ##

    #amqp1_0.protocol_strict_mode = false

     

    ##记录设置。

    ##

    ##有关详细信息,请参见https://rabbitmq.com/logging.html和https://github.com/erlang-lager/lager。

    ##

     

    ##日志目录,默认情况下来自RABBITMQ_LOG_BASE env变量。

    ##

    #log.dir = /var/log/rabbitmq

     

    ##记录到文件。可以为false或文件名。

    ##默认值:

    #log.file = rabbit.log

     

    ##禁用记录到文件

    #log.file = false

     

    ##文件记录的日志级别

    ##

    #log.file.level = info

     

    ##文件旋转配置。默认情况下不旋转。

    ##请勿将轮播日期设置为“”。如果“”是所需值,则不设置该值

    #log.file.rotation.date = $D0

    #log.file.rotation.size = 0

     

    ##登录到控制台(可以为true或false)

    ##

    #log.console = false

     

    ##控制台日志的日志级别

    ##

    #log.console.level = info

     

    ##登录到amq.rabbitmq.log交换(可以为true或false)

    ##

    #log.exchange = false

     

    ##登录到amq.rabbitmq.log交换时使用的日志级别

    ##

    #log.exchange.level = info

     

     

     

    ## ------------------------------------------------ ----------------------------

    ## RabbitMQ LDAP插件

    ##

    ##相关文档指南:https://rabbitmq.com/ldap.html。

    ##

    ## ------------------------------------------------ ----------------------------

     

    #=======================================

    #LDAP部分

    #=======================================

     

    ##

    ##连接到LDAP服务器

    ## ===============================

    ##

     

    ##指定要绑定的服务器。您*必须*为此设置插件

    ##正常工作。

    ##

    #auth_ldap.servers.1 = your-server-name-goes-here

     

    ##您可以定义多个服务器

    #auth_ldap.servers.2 = your-other-server

     

    ##使用TLS连接到LDAP服务器

    ##

    #auth_ldap.use_ssl = false

     

    ##指定要连接的LDAP端口

    ##

    #auth_ldap.port = 389

     

    ## LDAP连接超时,以毫秒或“infinity”为单位

    ##

    #auth_ldap.timeout = infinity

     

    ##或数字

    #auth_ldap.timeout = 500

     

    ##启用LDAP查询的日志记录。

    ##其中之一

    ##-假(不执行任何日志记录)

    ##-true(详细记录插件使用的逻辑)

    ##-网络(确实如此,但还会记录LDAP网络流量)

    ##

    ##默认为false。

    ##

    #auth_ldap.log = false

     

    ##也可以是true或network

    #auth_ldap.log = true

    #auth_ldap.log = network

     

    ##

    ##身份验证

    ## ==============

    ##

     

    ##模式,用于将AMQP提供的用户名转换为DN之前的名称

    ## 捆绑

    ##

    #auth_ldap.user_dn_pattern = cn=${username},ou=People,dc=example,dc=com

     

    ##或者,您可以将用户名转换为杰出

    ##绑定后通过LDAP查找进行命名。请参阅有关的文档

    ##详细信息。

     

    ##通过查找将用户名转换为dn时,请将其设置为

    ##代表用户名的属性名称,以及

    ##查找查询的基本DN。

    ##

    #auth_ldap.dn_lookup_attribute = userPrincipalName

    #auth_ldap.dn_lookup_base = DC=gopivotal,DC=com

     

    ##控制如何绑定授权查询以及如何绑定

    ##检索未登录的用户的详细信息

    ##密码(例如SASL EXTERNAL)。

    ##其中之一

    ##-as_user(绑定为经过身份验证的用户-需要密码)

    ##-anon(匿名绑定)

    ##-{UserDN,Password}(用于绑定指定的用户名和密码)

    ##

    ##默认为'as_user'。

    ##

    #auth_ldap.other_bind = as_user

     

    ##或者可以更复杂:

    #auth_ldap.other_bind.user_dn = User

    #auth_ldap.other_bind.password = Password

     

    ##如果定义了user_dn和密码-其他选项将被忽略。

     

    #-----------------------------

    #LDAP的复杂部分

    #-----------------------------

     

    ##

    ##授权

    ## =============

    ##

     

    ## LDAP插件可以针对您的服务器执行各种查询

    ## LDAP服务器确定授权问题。

    ##

    ##相关文档指南:https://rabbitmq.com/ldap.html#authorisation。

     

    ##以下配置应在advanced.config文件中定义

    ##不要取消注释这些行!

     

    ##设置要在确定虚拟主机访问权限时使用的查询

    ##

    ## {vhost_access_query,{in_group,

    ##"ou=${vhost}-users,ou=vhosts,d=example,dc=com"}},

     

    ##设置要在确定资源(例如队列)访问时使用的查询

    ##

    ## {resource_access_query,{constant,true}},

     

    ##设置查询以确定用户拥有哪些标签

    ##

    ## {tag_queries,[]}

    #]},

    #-----------------------------

  • 相关阅读:
    pycharm安装,svn使用,远程开发调试,接口测试,连接服务器
    scrapy回调函数传递参数
    python发送邮件
    python开发部署时新增数据库中表的方法
    python更新数据库脚本三种方法
    python中json.loads,dumps,jsonify使用
    chmod 命令
    find
    find 命令
    locate 命令
  • 原文地址:https://www.cnblogs.com/masy-lucifer/p/13551090.html
Copyright © 2011-2022 走看看