卡夫卡编年史队列基准
總覽
最近,我被要求比較《卡夫卡》和《編年史》的性能。 沒(méi)有兩個(gè)產(chǎn)品是完全一樣的,要進(jìn)行公平的比較并不容易。 我們可以嘗試運(yùn)行類似的測(cè)試,看看會(huì)得到什么結(jié)果。
該測(cè)試基于Apache Kafka性能結(jié)果 。
測(cè)試使用了什么?
卡夫卡測(cè)試的一個(gè)方面是多線程性能。 在我們已經(jīng)完成的測(cè)試中,使用更多的線程(取決于您擁有的CPU數(shù)量)并不好壞。 我們沒(méi)有在這里進(jìn)行基準(zhǔn)測(cè)試。 所有測(cè)試都使用一個(gè)生產(chǎn)者。
另一個(gè)區(qū)別是,我們按時(shí)間而不是按計(jì)數(shù)定期刷新到磁盤。 能夠說(shuō)自己永遠(yuǎn)不會(huì)落后X毫秒通常比說(shuō)600條消息更有用,因?yàn)槟恢肋@些消息可能在那里等待了多長(zhǎng)時(shí)間。 對(duì)于我們的測(cè)試,我們看一下1 ms到10 ms之間的刷新周期。 在Kafka的測(cè)試中,它們似乎大約每3毫秒一次。
在每種情況下,使用的消息大小均為200字節(jié),我們探討了一次寫入1、2、5和10條消息的區(qū)別。 我們還分批嘗試了200條消息,其性能類似于10條消息。
我們僅測(cè)試了寫入SSD磁盤的持久性。 注意:編年史是沒(méi)有經(jīng)紀(jì)人的。
結(jié)果
該測(cè)試的結(jié)果顯示了以MB / s為單位的消息速率。 這是描述性能的合理方法,因?yàn)橄⒋笮】赡軙?huì)有所不同,但是您將獲得類似的帶寬,尤其是消息大小超過(guò)1 KB時(shí)。
| 設(shè)備 | 沖洗周期(毫秒) | 1個(gè) | 2 | 5 | 10 |
| ssd.ext4 | 1個(gè) | 236 MB /秒 | 300 MB /秒 | 340 MB /秒 | 363 MB /秒 |
| ssd.ext4 | 3 | 378 MB /秒 | 483 MB /秒 | 556 MB /秒 | 583 MB /秒 |
| ssd.ext4 | 10 | 495 MB /秒 | 595 MB /秒 | 687 MB /秒 | 705 MB /秒 |
| tmpfs | 吶 | 988 MB /秒 | 1317 MB /秒 | 1680 MB /秒 | 1847 MB?? /秒 |
我們還測(cè)試了“寫入” tmpfs文件系統(tǒng)。 由于沒(méi)有執(zhí)行對(duì)設(shè)備的實(shí)際寫入,因此速度更快。
結(jié)論
無(wú)法與Kafka進(jìn)行直接比較,因?yàn)樗腔诖淼南到y(tǒng),因?yàn)楸仨毻ㄟ^(guò)TCP發(fā)送任何消息。 編年史可以通過(guò)TCP復(fù)制,但是不是必須的,如果要最大化性能,您將使用高速網(wǎng)絡(luò),最快的是服務(wù)器的內(nèi)存總線。
您可以運(yùn)行類似的測(cè)試并獲得出色的結(jié)果。 如果您需要處理數(shù)百M(fèi)B / s的突發(fā)數(shù)據(jù),則Chronicle可能是更好的解決方案。
翻譯自: https://www.javacodegeeks.com/2014/10/kafka-benchmark-on-chronicle-queue.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的卡夫卡编年史队列基准的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 苹果电脑开不了机进水怎么办呢(苹果电脑进
- 下一篇: 简而言之,JUnit:测试隔离