以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads

了解區塊鏈延遲和吞吐量_區塊鏈

Author:

Time:1900/1/1 0:00:00

作者:LefterisKokoris-Kogias

來源:paradigm.xyz

編譯:ETH中文

大家鮮少提到如何正確地測量一個系統,但它卻是系統設計和評估過程中最重要的步驟。系統中有許多共識協議、各種性能的變量和對可擴展性的權衡。

然而,直到目前都沒有一種所有人都認同的可靠方法,能夠讓人進行蘋果對比蘋果這種同一范疇內的合理比較。在本文,我們將概述受到數據中心化系統測量機制啟發的一種方法,并探討在評估一個區塊鏈系統時可以避免的一些常見錯誤。

關鍵指標及其相互作用

在開發區塊鏈系統時,我們應該將兩個重要指標考量在內:延遲和吞吐量。

用戶關心的第一件事就是交易延遲,即發起交易或支付和收到確認交易有效性信息之間的時間。

在傳統的BFT系統中,一旦交易被確認就會被敲定,而最長鏈共識機制中,一筆交易可能會被打包進區塊,然后再重組。結果就是,我們需要一直等到交易達到“k個區塊深”了才能進行敲定,這就導致了延遲的時間大大超過了單次確認的時間。

聲音 | 知名投資人士:區塊鏈50指數幫助投資人了解區塊鏈的整個熱度:據新京報報道,對于深證區塊鏈50指數,一位知名投資機構人士對新京報記者表示,指數推出,幫助投資人了解區塊鏈的整個熱度以及整個行業的發展狀況。[2019/12/30]

其次,系統的吞吐量一般對于系統設計者來說十分重要。這就是系統每單位時間所處理的總負載,一般表達為每秒交易量(TPS)。

乍一看,這兩個關鍵指標看起來是完全相反的東西。但因為吞吐量由每秒的交易量得出,而延遲則是以秒為單位進行測量。自然而然地,我們會認為吞吐量=負載/延遲。

但事實并非如此。因為許多系統傾向于生成在y軸上展示吞吐量或延遲,而在x軸上展示節點數量的圖表,所以這種計算方式的實現是不可能的。相反,我們能生成一個更好的、包含吞吐量/延遲指標的圖表,它以非線性的方式呈現讓圖表清晰易讀。

當沒有競爭時,延遲是恒定的,僅是改變系統的負載,就可以改變吞吐量。會發生這種情況,是因為低競爭情況下,發送交易的最小開銷是固定的,且隊列延遲為0,致使“無論進來什么,都能直接出去”。

動態 | Coinbase研究:學生越來越有興趣了解區塊鏈和加密如何使全世界的人受益:Coinbase博客發文稱,研究表明,學生們越來越有興趣了解區塊鏈和加密如何使全世界的人受益。在2018年至2019年期間,學習區塊鏈中對于“社會公正”的興趣從13%上升到20%。與此同時,學生對于“安全”和“未來應用與增長”的學習興趣在過去一年中都有所下降,分別從37%降至29%和31%至27%。[2019/8/31]

在競爭激烈的情況下,吞吐量是恒定的,但僅是改變負載就可以讓延遲發生變化。

這是因為系統已經超負載了,而增加更多負載會造成等待隊列無限變長。更反常的是,延遲似乎會隨著實驗長度而發生變化,這是一個無限增長隊列的人為結果。

這些表現都可以在典型的“曲棍球圖”或“L型圖”上看到,它取決于到達間隔的分布。因此,這篇文章的關鍵要點是,我們應該在熱區進行測量,這里的吞吐量和延遲都會影響我們的基準;而不用測量邊緣區域,這里的吞吐量和延遲只有一個是重要的。

政策 | 新加坡法案:推出專業人士轉業計劃 了解區塊鏈等新興產業:據經濟日報消息,新加坡總統哈莉瑪日前批準政府撥款法案,標志著新加坡2019年度財政預算案正式生效。在員工自身發展方面,新加坡政府十分重視國民素質教育,創造人才成長的良好環境,推出專業人士轉業計劃,從而讓他們了解區塊鏈等新興產業,成為復合型人才。[2019/3/20]

測量方法論

在做實驗時,實驗者有三種主要的設計選項:

1、開環vs.閉環

現在有兩種可以控制對目標發出請求流的主要方法。開環系統基于n=∞個客戶端進行建模,這些客戶端根據速率λ和到達間隔分布向目標發送請求。閉環系統會在任何給定時間內限制未完成請求的數量。開環系統和閉環系統的區別是特定部署的特點,同一個系統可以部署在不同的場景中。

例如,一個鍵值存儲可以在一個開環部署中為數千個應用程序服務器提供服務,或在一個閉環部署中只為幾個阻塞客戶端提供服務。

動態 | 北京通信管理局學習了解區塊鏈證據存儲等在司法審判中的運用情況:據北京市通信管理局消息,3月4日,北京市通信管理局局長林樂虎一行赴北京互聯網法院交流學習,了解了在線審判流程中人臉識別、手機短信彈屏、語音識別、區塊鏈證據存儲、裁判文書自動生成、電子卷宗隨案生成等互聯網科技在司法審判中的運用情況。[2019/3/6]

對正確的部署場景進行測試是必不可少的,因為比起閉環系統的延遲通常受制于潛在的未完成請求數量,而開環系統可能會產生大量的等待隊列,所以,延遲會更長。一般來說,區塊鏈協議可以被任意數量的客戶端使用,所以在開環環境下對其做評估會更準確。

2、綜合基準測試的到達間隔分布

在創建合成工作負載時,我們必然會問:如何向系統提交請求?許多系統在測量之前會先預加載事務,但這會使測量產生偏差,因為系統從異常狀態0開始運行。此外,預加載的請求已經在主存儲器中,也因此繞過了其網絡堆棧。

現場 | 蘇瀟:應將大眾了解區塊鏈門檻降到最低:金色財經現場報道,今日西安舉辦的“首屆區塊鏈嘉年華”活動上,哈希屋創始人蘇瀟談到,目前區塊鏈行業發展不平衡,除了技術和應用落地的挑戰得到普遍關注外,正確的科普和引導也非常缺乏。因此,普及傳播區塊鏈知識、歷史、文化、技術應當成為從業者的使命,把大眾接受、了解區塊鏈知識的門檻降到最低。[2018/8/25]

更好一些的方法則是以確定的速率發送請求,這會導致L型的圖表的出現,因為系統的容量得到了最佳使用。

然而,開放系統往往不以可預測的方式運作。相反,它們有處于高負載和低負載的時間段。為了對此進行建模,我們可以采用概率間隔分布,該分布一般是基于泊松分布。它將導致“曲棍球”圖表,因為即使平均速率低于最佳值,泊松爆發也會導致一些排隊延遲。但這對我們十分有利,因為我們可以看到系統如何處理高負載以及負載恢復正常時,系統恢復的速度有多快。

3、熱身階段

最后要考慮的一點是何時開始測量。我們希望流水線在開始之前充滿事務;否則,將需要測量預熱延遲。理想情況下,預熱延遲的測量應該通過熱身階段中的延遲測量來完成,直到測量結果遵循預期的分布。

如何進行比較

最后一個難題是合理比較系統的各種部署。同樣,難點在于延遲和吞吐量是相互依賴的,因此我們可能難以生成公平的吞吐量/節點數圖表。

最好的方法是定義服務級別目標(SLO)并測量當時的吞吐量,而不是簡單地將每個系統推到其最高吞吐量。在吞吐量/延遲圖上繪制一條與延遲軸相交SLO處的水平線并對相交點進行采樣,這是一種可視化的好方法。

但我設置了5秒的SLO,它只需要2秒

有人可能想要增加這里的負載,以便利用飽和點之后稍高的可用吞吐量。但是這很危險。如果系統操作配置不足,意外的請求爆發將導致系統達到完全飽和,致使延遲激增且很快會違背SLO。實質上,在飽和點之后運行會導致一種不穩定的平衡。

因此,有兩點需要考慮:

過度配置系統。本質上,系統應該在飽和點以下運行,以便吸收到達間隔分布中的爆發,而不會導致排隊延遲增加。

如果SLO下方有空間,請增加batch的大小。這會增加系統關鍵路徑上的負載,而不會增多排隊延遲,它為你提供更高的吞吐量以獲得你所要的更高延遲權衡。

我正在產生巨大的負載,該如何測量延遲呢?

當系統的負載很高時,嘗試訪問本地時鐘,并為到達系統的每個事務添加時間戳可能會導致結果出現偏差。

相反,還有兩個更可行的選擇。第一種也是最簡單的方法是對事務進行抽樣;例如,在某些事務中可能存在一個魔數,而這些事務是客戶端為其保留計時器的事務。在提交時間之后,任何人都可以檢查區塊鏈以確定這些事務何時提交,從而計算它們的延遲。這種做法的主要優點是,它不會干擾到達間隔分布。但是,因為必須修改某些事務,所以它可能被認為是“hacky”。

而更系統的方法則是使用兩個負載生成器。第一個是主要的負載生成器,由它來遵循泊松分布。第二個請求生成器則用來測量延遲,并且它的負載會低得多;與系統的其余部分相比,可以將這個請求生成器視為單個客戶端。即使系統向每個請求發送回復,我們也可以輕松地將所有回復放到負載生成器中,并只測量來自請求生成器的延遲。

唯一棘手的部分是,實際的到達間隔分布是兩個隨機變量的總和;但是,兩個泊松分布的總和仍然是泊松分布,所以數學并不難:)。

總結

測量大規模分布式系統對于識別瓶頸和分析壓力下的預期行為是至關重要的。希望通過使用上述方法,我們都可以朝著公用語言邁出第一步,這最終將讓區塊鏈系統更適用于他們所做的工作以及他們對終端用戶的承諾。

在未來的工作中,我們計劃將此方法應用于現有的共識機制中,如果有興趣,請在Twitter上聯系!

Tags:區塊鏈TERBASEINB區塊鏈存證平臺法院TerraClassicKRWdatalinkbasedatashieldcoinbank

酷幣下載
Messari:去中心化無線網絡(DeWi)可以重塑電信業嗎?_DEW

原文標題:《TheTelecomCowboysoftheDecentralizedWirelessMovement》作者:SamiKassab編譯:郭倩雯.

1900/1/1 0:00:00
香港財政司司長陳茂波:穩慎推進虛擬資產業在港發展_虛擬資產

撰文:陳茂波,香港財政司司長原文鏈接:香港財政司官網特區政府在上月底發表了《有關虛擬資產在港發展的政策宣言》,闡明了我們對虛擬資產行業、相關創新技術與應用,和其生態系統發展的愿景和方針.

1900/1/1 0:00:00
Avalanche 主網激活 Banff 升級,支持子網驗證者使用子網代幣進行質押_AVA

Avalanche宣布其主網成功激活Banff升級,該升級支持Avalanche子網驗證者使用子網代幣進行質押并獲得獎勵,還使子網創建者能夠在質押期結束之前從子網中刪除驗證者.

1900/1/1 0:00:00
解析 Equals9:Web3 電競平臺的解決方案與市場前景_ALS

作者:Equals9 什么是Equals9,什么是EQ9?Equals9是一家旗下擁有多個子公司的控股公司,是一個Dapps(去中心化應用)的孵化平臺.

1900/1/1 0:00:00
香港立法會議員 Duncan Chiu:期待 Web3 業界積極響應香港證監會咨詢并提供建議,香港與新加坡誰是贏家無需過早定論_WEB3

作者:MAPProtocol據ChainCatcher消息,11月5日在香港金融科技周期間,由跨鏈技術賽道范式MAPProtocol聯合AMAStudio.

1900/1/1 0:00:00
身份預言機項目 Clique 完成 300 萬美元種子輪融資,Sky9 Capital 等參投_VEN

據BusinessInsider報道,連接Web2和Web3的身份預言機項目Clique完成300萬美元種子輪融資.

1900/1/1 0:00:00
ads