溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何理解Storm的性能測試報告

發(fā)布時間:2021-11-25 17:28:55 來源:億速云 閱讀:151 作者:柒染 欄目:云計算

本篇文章為大家展示了如何理解Storm的性能測試報告,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

在一次面試的過程之中,有CTO詳細的詢問了 對于機器性能的測試,如下所示:

配置如下:

1                   Cpu     8核   ×2 臺機器

2                   主頻     2.26

3                    操作系統(tǒng) redhat

4                    網(wǎng)絡(luò)千M的以太網(wǎng)

5                   Storm的版本號:0.6.1

測試方法

Storm 是一個流處理系統(tǒng),它以tuple為基本單位,每個tuple可以包含多個字段(field)。我們給tuple定義兩個字段:

  • Data: 存放原始的數(shù)據(jù),這里是1000字節(jié)的數(shù)據(jù),此測試中我們僅僅是直接的轉(zhuǎn)發(fā)數(shù)據(jù),所以唯一的處理開銷就是1000字節(jié)的內(nèi)存拷貝

  • ltsInfo: 時間戳信息,每經(jīng)過一個處理模塊,我們就在此字段中追加上當時的時間戳,最后統(tǒng)計模塊就可以根據(jù)這些時間信息計算出總延遲等。由于不同的機器時間戳并不同步,這給計算延遲帶來了固有誤差,解決的辦法就是把數(shù)據(jù)發(fā)送模塊和最后的統(tǒng)計模塊放到一臺物理機上。

關(guān)于在分布式集群上測試storm的一個說明:在storm上,我們很難給某個模塊(component)指定其運行的物理機,storm總是自動的把任務(wù)平均分配給集群中的各個機器,因此在測試中我們將使用storm的工作方式來擴展,而非設(shè)計非典型的情景(給某個component指定特定的機器來運行,從而打破這種平均分配原則)。

也就是采取了淘測試的機制來處理

內(nèi)存的使用

如何理解Storm的性能測試報告

淘寶的測試結(jié)果為 2萬條/秒左右。

在我本地機器上測試是超過了2.5萬條,其中的區(qū)別可能是淘寶在測試的過程之中加入了一些時間TimeStamp。

到目前位置還沒有新加機器來進行一些橫向的擴展。沒有對比新加入的機器對于系統(tǒng)集群的計算能力有多少增加。

具體的測試方式請參考

淘測試的連接:

http://blog.linezing.com/?p=1048&replytocom=828

在我們的實際測試之中,GC 將對于數(shù)據(jù)的處理造成比較大的速度的改變。Tuple的處理會積壓是一個特別常見現(xiàn)象。

測試結(jié)論

經(jīng)過上面的測試我們可以得出以下的結(jié)論:

  • storm單條流水線的處理能力大約為20000 tupe/s, (每個tuple大小為1000字節(jié))

  • storm系統(tǒng)本省的處理延遲為毫秒級

  • 在集群中橫向擴展可以增加系統(tǒng)的處理能力,實測結(jié)果為1.6倍

  • Storm中大量的使用了線程,即使單條處理流水線的系統(tǒng),也有十幾個線程在同時運行,所以幾乎所有的16個CPU都在運行狀態(tài),load average 約為 3.5

  • Jvm GC一般情況下對系統(tǒng)性能影響有限,但是內(nèi)存緊張時,GC會成為系統(tǒng)性能的瓶頸

  • 使用外部處理程序性能下降明顯,所以在高性能要求下,盡量使用storm內(nèi)建的處理模式

測試的工具是用的:nmon

上述內(nèi)容就是如何理解Storm的性能測試報告,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI