kafaka,activityMQ,rabbitMQ消息中間件對比
說明
本次測試,使用kafaka,activityMQ,rabbitMQ消息中間件進行對比,均採用一個消息隊列,測試中間件在收發消息時時延。
測試前置條件
1.消費者端只配置一個消費者來消費數據。
2.多線程才用jmeter通過http請求來進行測試。
3.actitvityMQ在1000線程100次時,時延太大,受制於電腦性能未測試。
測試結果
結論
從結果上來看,在消息發送方面,kafak的效率較高,rabbitMQ次之,activityMQ最慢;在消息處理時延方面單線程情況下activityMQ的效率較高,kafak次之,rabbitMQ最慢,但考慮到activityMQ發送較慢,隊列中堆積消息少,故處理時延較小,參考性不強;在多線程方面kafak處理較快,rabbitMQ次之,activityMQ最慢。在消息可靠性方面在測試10萬條消息時均未發現消息丟失問題,但閱讀資料kafak會有少量丟消息的情況存在。結合業務方面考慮,在需要消息可靠保證的需求可以採用rabbitMQ,例如:計劃下達生產,控投等業務。對於吞吐量高,但對於可靠性要求不是太高的可以採用kafak,例如記錄日誌的消息。