基礎信息:
spring.rabbitmq.host: 默認localhost spring.rabbitmq.port: 默認5672 spring.rabbitmq.username: 用戶名 spring.rabbitmq.password: 密碼 spring.rabbitmq.virtual-host: 連接到代理時用的虛擬主機 spring.rabbitmq.addresses: 連接到server的地址列表(以逗號分隔),先addresses后host spring.rabbitmq.requested-heartbeat: 請求心跳超時時間,0為不指定,如果不指定時間單位默認為妙 spring.rabbitmq.publisher-confirms: 是否啟用【發布確認】,默認false spring.rabbitmq.publisher-returns: 是否啟用【發布返回】,默認false spring.rabbitmq.connection-timeout: 連接超時時間,單位毫秒,0表示永不超時
SSL:
spring.rabbitmq.ssl.enabled: 是否支持ssl,默認false spring.rabbitmq.ssl.key-store: 持有SSL certificate的key store的路徑 spring.rabbitmq.ssl.key-store-password: 訪問key store的密碼 spring.rabbitmq.ssl.trust-store: 持有SSL certificates的Trust store spring.rabbitmq.ssl.trust-store-password: 訪問trust store的密碼 spring.rabbitmq.ssl.trust-store-type=JKS:Trust store 類型. spring.rabbitmq.ssl.algorithm: ssl使用的算法,默認由rabiitClient配置 spring.rabbitmq.ssl.validate-server-certificate=true:是否啟用服務端證書驗證 spring.rabbitmq.ssl.verify-hostname=true 是否啟用主機驗證
緩存cache:
spring.rabbitmq.cache.channel.size: 緩存中保持的channel數量 spring.rabbitmq.cache.channel.checkout-timeout: 當緩存數量被設置時,從緩存中獲取一個channel的超時時間,單位毫秒;如果為0,則總是創建一個新channel spring.rabbitmq.cache.connection.size: 緩存的channel數,只有是CONNECTION模式時生效 spring.rabbitmq.cache.connection.mode=channel: 連接工廠緩存模式:channel 和 connection
Listener:
spring.rabbitmq.listener.type=simple: 容器類型.simple或direct spring.rabbitmq.listener.simple.auto-startup=true: 是否啟動時自動啟動容器 spring.rabbitmq.listener.simple.acknowledge-mode: 表示消息確認方式,其有三種配置方式,分別是none、manual和auto;默認auto spring.rabbitmq.listener.simple.concurrency: 最小的消費者數量 spring.rabbitmq.listener.simple.max-concurrency: 最大的消費者數量 spring.rabbitmq.listener.simple.prefetch: 一個消費者最多可處理的nack消息數量,如果有事務的話,必須大於等於transaction數量. spring.rabbitmq.listener.simple.transaction-size: 當ack模式為auto時,一個事務(ack間)處理的消息數量,最好是小於等於prefetch的數量.若大於prefetch, 則prefetch將增加到這個值 spring.rabbitmq.listener.simple.default-requeue-rejected: 決定被拒絕的消息是否重新入隊;默認是true(與參數acknowledge-mode有關系) spring.rabbitmq.listener.simple.missing-queues-fatal=true 若容器聲明的隊列在代理上不可用,是否失敗; 或者運行時一個多多個隊列被刪除,是否停止容器 spring.rabbitmq.listener.simple.idle-event-interval: 發布空閑容器的時間間隔,單位毫秒 spring.rabbitmq.listener.simple.retry.enabled=false: 監聽重試是否可用 spring.rabbitmq.listener.simple.retry.max-attempts=3: 最大重試次數 spring.rabbitmq.listener.simple.retry.max-interval=10000ms: 最大重試時間間隔 spring.rabbitmq.listener.simple.retry.initial-interval=1000ms:第一次和第二次嘗試傳遞消息的時間間隔 spring.rabbitmq.listener.simple.retry.multiplier=1: 應用於上一重試間隔的乘數 spring.rabbitmq.listener.simple.retry.stateless=true: 重試時有狀態or無狀態 spring.rabbitmq.listener.direct.acknowledge-mode= ack模式 spring.rabbitmq.listener.direct.auto-startup=true 是否在啟動時自動啟動容器 spring.rabbitmq.listener.direct.consumers-per-queue= 每個隊列消費者數量. spring.rabbitmq.listener.direct.default-requeue-rejected= 默認是否將拒絕傳送的消息重新入隊. spring.rabbitmq.listener.direct.idle-event-interval= 空閑容器事件發布時間間隔. spring.rabbitmq.listener.direct.missing-queues-fatal=false若容器聲明的隊列在代理上不可用,是否失敗. spring.rabbitmq.listener.direct.prefetch= 每個消費者可最大處理的nack消息數量. spring.rabbitmq.listener.direct.retry.enabled=false 是否啟用發布重試機制. spring.rabbitmq.listener.direct.retry.initial-interval=1000ms # Duration between the first and second attempt to deliver a message. spring.rabbitmq.listener.direct.retry.max-attempts=3 # Maximum number of attempts to deliver a message. spring.rabbitmq.listener.direct.retry.max-interval=10000ms # Maximum duration between attempts. spring.rabbitmq.listener.direct.retry.multiplier=1 # Multiplier to apply to the previous retry interval. spring.rabbitmq.listener.direct.retry.stateless=true # Whether retries are stateless or stateful. Template spring.rabbitmq.template.mandatory: 啟用強制信息;默認false spring.rabbitmq.template.receive-timeout: receive() 操作的超時時間 spring.rabbitmq.template.reply-timeout: sendAndReceive() 操作的超時時間 spring.rabbitmq.template.retry.enabled=false: 發送重試是否可用 spring.rabbitmq.template.retry.max-attempts=3: 最大重試次數 spring.rabbitmq.template.retry.initial-interva=1000msl: 第一次和第二次嘗試發布或傳遞消息之間的間隔 spring.rabbitmq.template.retry.multiplier=1: 應用於上一重試間隔的乘數 spring.rabbitmq.template.retry.max-interval=10000: 最大重試時間間隔