Transactions
我們應該如何對每秒事務進行基準測試?
我想比較私有乙太坊(例如 PoA)、Eris 和 HydraChain 的交易速度。
我們應該如何對它們進行基準測試?
我認為你不能現實地做到這一點。乙太坊對交易數量沒有理論上的上限。當你推送的交易數量超過了區塊的容量時,區塊大小會逐漸增加以滿足它們的需求,因此理論上它是無限的。
在實踐中,當區塊大小超過某個門檻值後,網路傳播時間、全節點的舊塊處理和礦工的新交易處理將開始飽和它們的計算能力。該門檻值將是您的吞吐量限制。問題是,這高度依賴於網路參與者(即,如果全節點是具有大量頻寬的大型機器,這將很高;而頻寬很小的小節點會將其拉低)。
總而言之,您可以測量您自己的專用網路的一些吞吐量,但它甚至不會遠端反映主網路(可能更高或更低)。準確衡量主網路容量的唯一方法是從本質上向其發送充滿交易的垃圾郵件,這將花費您巨額費用。
在 Frontier 發布之前(自從進行了大量的潤色、修復、性能調整、優化之後),我們已經建立了一個Olympic 測試網路,並頒發獎品來嘗試破壞/重載東西。然後我認為我們達到了大約 25 TPS 的吞吐量,但同樣,這只是我們目前網路規模和資源的一小部分,我們不知道其影響。主網的記錄(即真實的付費交易)大約是 8 TPS,但這甚至沒有削弱系統。