這種方式風險較大,一旦Broker重啓或者宕機時,會致使整個服務不可用,不建議線上環境使用異步
一個集羣無Slave,全是Master,例如2個Master或者3個Master。性能
優勢:
配置簡單,單個Master宕機或重啓維護對應用無影響,在磁盤配置爲RAID10時,即便機器宕機不可恢復狀況下,因爲RAID10磁盤很是可靠,消息也不會丟失(異步刷盤丟失少許消息,同步刷盤一條不丟)。性能最高。spa
缺點:
單臺機器宕機期間,這臺機器上未被消費的消息在機器恢復以前不可訂閱,消息實時性會受到影響。同步
每一個Master配置一個Slave,有多對Master-Slave,HA採用異步複製方式,主備有短暫消息延遲,毫秒級。ast
優勢:集羣
即便磁盤損壞,消息丟失的很是少,且消息實時性不會受影響,由於Master 宕機後,消費者仍然能夠從Slave消費,此過程對應用透明。不須要人工干預。性能同多 Master 模式幾乎同樣。配置
缺點:數據
Master宕機,磁盤損壞狀況,會丟失少許消息。磁盤
每一個Master配置一個Slave,有多對Master-Slave,HA採用同步雙寫方式,主備都寫成功,嚮應用才返回成功。消息
優勢:
數據與服務都無單點,Master宕機狀況下,消息無延遲,服務可用性與數據可用性都很是高。
缺點:
性能比異步複製模式略低,大約低10%左右,發送單個消息的RT會略高。目前主宕機後,備機不能自動切換爲主機,後續會支持自動切換功能。