2011-12-19 50 views
2

我們正在使用類似於此處爲ZeroMQ指定的性能測試的拉推機制。 http://www.zeromq.org/results:perf-howtoZeroMQ,Scala綁定是否會顯着減慢

對於4.3KB的郵件大小的吞吐量測試和100,000條消息,我得到85K味精的性能/秒

維卡斯@維卡斯 - 筆記本電腦:〜/ W /軟件/爆炸/ zeromq-2.1。 10/PERF $ local_thr TCP://127.0.0.1:5555 4300 100000 消息大小:4300 [B] 消息計數:100000 平均吞吐量:85203 [MSG /秒] 平均吞吐量:2930.983 [Mb/s的]

但是,使用Scala中的代碼並使用Scala綁定0.0.3,我得到的速度低於15K msg/sec。

吉斯特這裏https://gist.github.com/1496406

到底哪裏出問題了?

回答

2

在測試0MQ吞吐量時,您需要小心謹慎地獲取有意義的數字。

首先,在快速網絡上使用具有足夠內核或兩臺機器的機器。

其次,發送足夠的消息來實際強調測試用例幾秒鐘。 100K太少了,可能1M會更好。

三,測試不同消息的大小以查看不同操作的影響。使用1字節的消息來測試語言API(Scala)的成本。使用100字節的消息來測試I/O的成本。使用1K消息來測試內存複製的成本。你通常會看到一條曲線。

+0

感謝Pieter的回覆,我發佈的要點只是一個場景,但正如您所建議的,我們嘗試了各種消息大小和消息數量的組合。這些數字遠不及我們通過性能測試所得到的結果。我按照Viktor的建議進行了更改,請參閱https://groups.google.com/forum/#!searchin/scala-user/zeromq$20scala$20binding/scala-user/EKPxFTuWq7o/_UCCY9mh0zwJ中的郵件主題。接近我們預期的改善。 – 2011-12-29 08:09:03

+0

https://groups.google.com/d/topic/scala-user/EKPxFTuWq7o/discussion – 2011-12-29 08:23:13