時間:2023-06-18|瀏覽:231
有態(tài)度/有深度/有溫度
文|老污
來源|區(qū)塊鏈兄弟
最近在做一個區(qū)塊鏈系統(tǒng)的底層設(shè)計,有一個繞不開的問題是,就是我的系統(tǒng)能提供多少個tps。為此,我收集了一些現(xiàn)有區(qū)塊鏈(當然也包括DAG等分布式賬本技術(shù))的tps數(shù)據(jù)。
1.ripple:
號稱轉(zhuǎn)賬神器的ripple,轉(zhuǎn)賬快速,并且手續(xù)費也很低,所以我本人經(jīng)常用它來做不同交易所之間的轉(zhuǎn)賬。從ripple官網(wǎng)的數(shù)據(jù)看,大概有1500tps:
xrp的tps數(shù)據(jù),來自ripple官網(wǎng)
2.eth:
以最高的日期算,當日的tps是1349890/24/60/60.0=15.616666666666667。
eth的tps數(shù)據(jù),來自etherscan.io
3.steemit:
來自2018年4月的數(shù)據(jù),在最高點是180萬左右,算下來tps是20.8。
steemit的tps
4.bitshares:
bitshares這個就比較有趣了,因為它在15年時候就號稱自己10萬tps了,而btc/eth等還在10附近玩耍,查著四個數(shù)量級呢,那么它這10萬tps是如何得來的呢?
bts做tps壓測的方式
大意是,我們創(chuàng)建了20萬個賬戶,各執(zhí)行5此次操作,加起來就是100萬次操作。在沒有任何簽名的情況下,我們每秒鐘能處理18萬次操作,用了更好的cpu之后,能再提高25%,因為我們認為10萬tps是妥妥的。還有啊,現(xiàn)實環(huán)境中的nasdaq也才6萬tps啊,他們的目標也才10萬tps。而我們已經(jīng)輕松的達到了10萬tps。另外,我們在有簽名的情況下,也能每秒輕松的達到2000tps(您是不是有疑惑,為何瞬間從10萬降到2000了?)。而在當前發(fā)布的版本中,我們?nèi)藶榈南拗频搅?000tps。
我們就會有疑惑了,2000tps是如何測試得到的呢?是否考慮到了p2p網(wǎng)絡(luò)的延遲呢?看樣子,似乎并沒有考慮這一點,可能僅僅是內(nèi)網(wǎng)幾臺witness(或者說記賬節(jié)點吧)之間的延遲呢?
bts的testnet如何獲得了20tps的超高性能
這篇文章有一部分介紹了bts2.0發(fā)布時,在測試網(wǎng)絡(luò)(p2p網(wǎng)絡(luò))測出了20tps的超高性能,并花了大量篇幅來解釋為什么離號稱的10萬tps相差甚遠。并不是我們處理交易的能力不行,而是p2p網(wǎng)絡(luò)太慢了,要達到10萬tps,需要千兆低延遲網(wǎng)絡(luò)連接,并且需要有30MB的網(wǎng)絡(luò)吞吐,而我們測試環(huán)境都只有一些低端的vps節(jié)點。
看到才發(fā)現(xiàn),bm這個人真是大忽悠啊。bts一方面采用dpos(從而是中心化的),只有少數(shù)節(jié)點擁有記賬權(quán),在一個節(jié)點記賬的時候,需要其他節(jié)點對它生產(chǎn)的塊進行簽名,這必然是要走p2p網(wǎng)絡(luò)的,于是bts開發(fā)者大膽假設(shè)網(wǎng)絡(luò)是可以優(yōu)化的,畢竟想要成為記賬節(jié)點,怎么也得下點血本來優(yōu)化一下網(wǎng)絡(luò)吧。而btc和eth則要分散的多,并且有眾多的小節(jié)點,區(qū)塊擴散要慢得多。
號稱百萬tps的eos,最終又能到多少tps呢?看到數(shù)據(jù)的時候,還是要多看看多想想,數(shù)據(jù)是如何得來的,測試的方式是否科學。
5.使用DAG技術(shù)的iota
這里引用的一條tweet,說iota在250個節(jié)點的網(wǎng)絡(luò)中能到100tps這個數(shù)量級,并且可以發(fā)起1000tps的測試(iota應(yīng)該是節(jié)點越多、交易越多反而tps越大):
6.btc/bts/steemit/eth統(tǒng)一比較:
btc/bts/steemit/eth每日交易量
整個市場在2018年1月達到最高,從上面的eth圖也可以看出,在1月份之后,每日交易量下跌非常明顯,說明市場非常低迷。包括bm本人也承認steemit的每日交易量不到2million,也就是tps不到25,而實際上,峰值的tps也不到20,而是只有驚人的18.3個。而號稱tps很高的bts,也只有13個tps而已,連測試網(wǎng)絡(luò)的20個都沒有達到。
7.總結(jié)
目前區(qū)塊鏈系統(tǒng)(不考慮xrp這種中心化的分布式賬本和采用DAG的iota),每天的交易量最高的都不超過180萬,tps最高也就20附近。我看到
我們以steemit為例,他每天處理了180萬筆交易,這個量級對于一個互聯(lián)網(wǎng)應(yīng)用而言是很少的,但是卻也依然運行良好,原因可能就在于,tps其實指代的都是寫入操作,對于steemit而已,很多請求都是讀取操作,如果僅僅是讀取區(qū)塊鏈,那么任何一個全節(jié)點都可以讀取,這個做sharding就非常方便了。
我們還要想一個問題,公鏈是否真的那么有價值?現(xiàn)在很多區(qū)塊鏈應(yīng)用都是在eth或者eos之類的公鏈上開發(fā)的,導致eth和eos價格都炒得非常高。但是公鏈本身性能都不太好的情況下,區(qū)塊鏈應(yīng)用又如何能夠跑起來呢?加上一點點攻擊就能把整個網(wǎng)絡(luò)堵死,可用性就太差了。
原文鏈接:http://t.cn/RDfq00d
文章發(fā)布只為分享區(qū)塊鏈技術(shù)內(nèi)容,版權(quán)歸原作者所有,觀點僅代表作者本人。
END
熱點:區(qū)塊鏈