消息隊列這麼多,你是怎麼做技術選型的呢?技術選型的標準是什麼?
技術選型的標準
- 必須是開源產品,有Bug可以修改源碼。
- 必須是近幾年流行,社區活躍度高,遇到Bug方便解決。
- 與周邊的生態系統兼容和集成度要高。
- 消息傳遞可靠;確保消息不丟失,支持集羣,有良好的性能且滿足大多數場景的性能要求。
RabbitMq
RocketMq
kafka
第二梯隊消息隊列
總結
- 若對消息隊列的功能和性能沒有很高的要求,建議用RabbitMq,開箱即用。
- RocketMq主要場景是處理在線業務,例如交易系統用消息隊列傳遞訂單,RocketMQ 的低延遲和金融級的穩定性是你需要的。
- kafka 主要場景處理海量的消息,日誌收集、監控信息或是前端的埋點這類數據,或應用場景大量使用了大數據、流計算相關的開源產品,kafka是最合適不過的了。