我使用spring-amqp連接到rabbitmq節點(A,B和C)的集羣。假設羣集中的其中一個rabbitmq節點關閉(C關閉)。此外,假設有兩個消息接收器(Receiver_1和Receiver_2)正在使用連接到節點C.當C關閉時,Receiver_1和Receiver_2是否自動將其連接切換爲連接到A或B?當C再次出現時會發生什麼?一些接收器連接是否被重新分配以使用C?spring-amqp HA支持
0
A
回答
1
故障轉移不被RabbitMQ本身支持。當RabbitMQ集羣中的某個節點出現故障時,將選擇一個新的主節點,業務將像往常一樣繼續處理集羣其餘部分。
因此,在您的示例中,Receiver_1和Receiver_2需要處理C已關閉的情況,並知道嘗試連接到A或B。
你可以看到官方文檔此位置:http://www.rabbitmq.com/clustering.html#clients
就個人而言,我使用HAProxy的(http://haproxy.1wt.eu/)加載平衡對我所有的客戶的連接。 haproxy不僅會負載均衡,而且會自動檢測節點何時離線並將所有連接重新路由到另一個活動節點。這就是說,它不會是無縫的。應用程序仍然會斷開連接,因此您需要捕獲異常並嘗試重新連接。
相關問題
- 1. 如何支持HA在wso2IS
- 2. AgensGraph可以支持HA嗎?
- 3. 不支持文化名稱'ha-latn'
- 4. 請告訴我SpringAMQP支持的RabbitMQ版本1.7
- 5. SPRINGAMQP或RabbitMq Java API
- 6. 如何使用SpringAmqp設置RabbitMQ策略
- 7. TransactionAttributeType支持| NOT支持
- 8. Onclick不支持支持
- 9. HTML支持JS支持
- 10. 支持庫不支持aar
- 11. 回覆在SpringAMQP被預先設置?
- 12. 使用參數創建SpringAMQP隊列
- 13. 支持或不支持monodroid支持異步?
- 14. rabbitmq HA羣集
- 15. HA代理rethinkdb
- 16. Java HA框架
- 17. 支持
- 18. 長期支持,以發展分支的支持分支
- 19. actionButtonStyle不支持支持庫v23.1.0
- 20. SuperSlim不支持Android支持庫23.2.1
- 21. 開源IDE支持Git支持
- 22. 不支持linux 3.7.1支持ext2嗎?
- 23. 支持Resume支持的Node.js請求流
- 24. EC2需要支持MVC3支持
- 25. 新來的android - 支持支持多屏
- 26. ios編譯ffmpeg不支持ac3支持
- 27. TextArea MaxLength - 支持還是不支持?
- 28. 驗證iMessage支持,短信支持
- 29. ActionBar(支持)與片段(支持)
- 30. OpenCV支持Android的硬件支持
你說的對RabbitMQ不支持故障轉移。從spring-amqp客戶端文檔看來,它看起來像支持故障轉移 - 但不清楚節點故障時連接是否會被負載平衡。 – Skynet
如何捕捉異常並嘗試重新連接?你是否抓住了ShutdownSignalException – Praan