2012-08-09 73 views
0

我對RabbitMQ相當陌生,並且正在計劃編寫一些測試以瞭解RabbitMQ中的消息系統如何隨着交換機的使用數量而擴展。特別是我很好奇,看看如何增加交換將會影響CPU,內存和IO的使用。RabbitMQ N交換測試

我注意到RabbitMQ帶有一個rabbitmqct1.bat應用程序,它有一個狀態命令可以輸出系統相關的信息。我遇到的問題是決定何時在消息傳遞週期中運行基準測試實用程序。

我應該運行它,因爲我發佈消息到交易所?或者當我將隊列綁定到交易所時運行它?或者當消息被從交換機推入隊列?

乾杯。

回答

1

您可能會發現Web管理插件是查看系統當前性能的最簡單方法。再次看看我在另一個問題中鏈接到的​​。

這是值得我們思考在你的測試變量:

  • 是您的郵件將是持續性? (請參閱delivery_mode = 2)這會增加您的磁盤IO
  • 您的消息有多大?這會帶來很大的區別吞吐量,如果他們是大的(幾KB的,那麼你可能想看看壓縮),在網絡性能方面,而且內存(和磁盤IO,如果他們是持久的)

值得注意的是,當隊列中沒有消費者時隊列性能會下降,所以如果隊列穩定增長,性能就會下降,理想情況下RabbitMQ隊列總是處於(或接近)0消息。

一些有用的鏈接:

RabbitMQ Performance Measurements, part 1

RabbitMQ Performance Measurements, part 2