从EOS和以太坊的DAPP发展现状浅聊公链的TPS

【以下内容系Mr小行原创图文,如有转载,请注明出处】

小行微信:253251304

本文同步发表于微信公众号:小行执笔走天涯

一花一世界,一叶一菩提;一人一追寻,一笔一天涯。

天涯之大,大外有大,只字片语间,一切了然......

每一次经历,都是一种收获;每一步旅程,都会看到不一样的风景;

既然迈开了步子,就不要停下来。

我是小行,欢迎关注“小行执笔走天涯”,让我带你在文字间浪迹不一样的天涯。

写在前边,近几日琐事较多,加之本文数据计算以及一些琐碎概念,所以本文写的很慢,足足写了4天,给各位粉丝致以深深的歉意。

基于EOS和以太坊的dapp的发展现状**

目前区块链底层公链运作比较成熟稳定的非EOS和以太坊莫属,但是基于两者而开发的DAPP,目前是这个什么状况呢?首先发三张图:

从EOS和以太坊的DAPP发展现状浅聊公链的TPS_第1张图片
eos.png

(上图,基于EOS的DApp日活跃用户排名TOP10,数据来源于dappradar2018.09.19)

从EOS和以太坊的DAPP发展现状浅聊公链的TPS_第2张图片
eth.png

(上图,基于ETH的DApp日活跃用户排名TOP10,数据来源于dappradar2018.09.19)

从EOS和以太坊的DAPP发展现状浅聊公链的TPS_第3张图片
移动app_看图王.png

(上图,2018年8月移动APP月度活跃用户数据,****单位是万台****,数据来源于艾瑞移动APP指数)

第一张第二张图分别是EOS和以太坊这两大公链平台的dapp日活数据,基于两者的dapp日活用户数超过300人的,满打满算一共只有14个;第三张图是现有成熟的互联网移动应用,里边的月度独立设备数,都是以万台为单位的,数以亿计,即使除以30,换算成日活跃用户数据,也都是千万级别以上的日活跃用户。

区块链应用(dapp)和现有的成熟互联网应用相比,差距无需多言,甚至都没有可比性。区块链应用离真正大规模成熟落地还相去甚远,且从图中可看出日活跃用户数据靠前的的应用基本都是游戏、博彩和交易所,其他方面比较好的应用压根没有......

底层公链EOS、以太坊和互联网应用的TPS性能以及现状

何谓TPS?TPS (Transaction Per Second)即每秒系统处理业务的数量。

一、据EOS官方公布的最新数据,目前EOS主网TPS最高达到3590笔/秒,距离EOS经常高调宣称的百万级仍相距甚远。(注意,3590这个数据仅仅是实验数据,非实际应用环境下的数据,我们暂且认为它是实际应用的数据。)

二、而以太坊的的拥堵现象时有发生,比如年初的Cryptokitties事件、6月受Fcoin影响的天价Gas费、以及前段时间游戏Fomo3D爆发后的拥堵,这类问题接二连三地将以太坊推上舆论的风口浪尖。我们以2018年1月4日以太坊日交易量峰值来算,当日交易量高达1349890笔交易,那么我们可以认为目前以太坊实际的最大TPS=1349890/24/60/60=15.6笔/秒。V神下一阶段目标就是探索百位级甚至千位级的TPS解决方案,以解决目前的问题。

三、9月16日最新消息,据sludgefeed报道,根据数字货币市场研究员Kevin Rooke编制的数据,EOS在过去24小时内共有11428名DApp用户,而以太坊网络则为10562名。此外,EOS7天的DApp交易量为4800万美元,以太坊仅有2600万美元。EOS的每日DApp用户和交易量超过以太坊。

四,下图所示,全球三家跟交易支付相关的应用产品的TPS和用户数量,数据来源于网络。

从EOS和以太坊的DAPP发展现状浅聊公链的TPS_第4张图片
微信图片_20180920152745.png

从上图我们可以看出,对于一个平台或应用产品来说,用户数量与TPS并不是正相关,而是与应用场景和实际用户需求相关。PayPal和Visa的用户遍布全球各地,由于时差原因,用户使用产品的时间整体处于一种均衡分布状态,所以我们明显看出两者的tps相对支付宝算是比较低的,但依然运营良好。而支付宝之所以这么高,因为支付宝首先相对来说比较本土化,最最重要的是淘宝双11以及各种购物节活动,经常会出现交易高峰,所以对支付宝的交易处理性能要求非常高。

基于以上数据,我们可以得出:

EOS网络目前可承载日交易量为:35906060*24=3.1亿多笔;

以太坊如果实现千位级TPS的话,以最低1000计算,日承载交易量:10006060*24=8640万笔;

根据最新的EOS和以太坊24小时用户量,

EOS DAPP用户:11428名,以太坊DAPP:10562名,基于目前的用户量再扩大100倍,再假设每个用户日均交易量10笔来算,

每天EOS网络的交易量:1142810010=1142.8万笔

每天以太坊网络的交易量:1056210010=1056.2万笔。

如果EOS真的实现百万级TPS,按最低100万TPS,那么对应每天可承载交易量:100万6060*24=864亿多笔,就算全球所有人不分男女老少,全部都用EOS相关应用产品,每人每天要交易15笔左右,都不是问题......(我们真的需要这么高的tps吗????)

以上计算方法是采用的互联网应用的TPS实测算法,默认用户数量稳定且用户交易平均分布。互联网应用的TPS测算,一般用人为截取的一段时间除以这段时间的总秒数,得出的平均每秒处理的业务数量,而且往往取交易峰值的时间段,比如支付宝就是截取双11狂欢当天刚开始几分钟交易峰值期测算的。上边计算的一些tps数据,都是按照一天的交易量除以总秒数得出。

这个时候肯定有些朋友,有疑问,说我这个tps算法不对,因为上边都是算的一天的,时间段跨度过大,因为我们都知道会在某个时间段内出现集中交易。其实抛除类似双11那样疯狂的集中交易,一般情况往往都是遵循帕累托二八原则,即80%的交易量集中在20%的时间段进行和完成。我们还是以数据计算进行阐述说明:

遵循二八原则的公链TPS实测算法:

TPS1=80%交易量/2420%6060=交易量/21600

互联网应用的TPS实测算法(默认用户数量稳定且用户交易平均分布):

TPS2=交易量/246060=交易量/86400

ok,我们进入计算环节:

当日交易量100万笔:TPS1=46.296 TPS2=11.574

当日交易量1亿笔: TPS1=4629.6 TPS2=1157.4

当日交易量10亿笔: TPS1=46296 TPS2=11574

以上数据计算我们可以看出,如果公链每天处理1亿笔交易,无论是按照帕累托二八原则计算,还是按照用户均衡分布交易来计算,V神倡导的千位级TPS都是足够的了。

在当下这个公链激烈竞争的时代,TPS一直被各家奉为至宝,不断刷新TPS数据以此宣扬自家公链产品的高性能。基于以上数据,小行想说的是,对于一个底层公链来说真的是TPS越高就越好吗?因为我们都简单的以为TPS越高,对应的公链就越优秀,但实际真的如此吗?我们先了解一下区块链公链的TPS(即理论实验数据)是如何计算的。

在区块链中,一般取最小模块儿,即一个区块,然后根据一个区块的出块时间、该区块包含的交易数量,进而算出该区块链网络的TPS。目前比特币网络中大概是10分钟,每个打包块里大概包括4000条交易数据,这样得出TPS=4000/(10*60)≈6.67

公链的TPS计算公式为:

TPS = 一个区块内包含的交易数量 / 区块产生时间 = 一个区块内包含的交易数量 / (共识算法运行的时间 + 广播并验证打包的时间 )

由此算式我们可知,要想提高TPS,有两种途径:

1.对区块进行扩容,这样每个区块包含的交易数量就会提高;

2.缩短区块产生的时间。

第一种途径,区块扩容,比特币社区一直因为扩容这个问题喋喋不休,一方面因为扩容解决方案必然带来的后果是比特币面临硬分叉问题(扩容之后,比特币区块链条将分为两条链 ,两条链在技术上只是“区块容量”这一项技术参数的差异,但却是两条完全独立隔离的链,这意味着将会产生两个“比特币”,而且两者是竞争关系。看看近几年比特币分叉了多少次,俗称“比特币儿子”。)另一方面,扩容就意味着增加硬盘和宽带,对矿工的机器配置要求也会更严苛,这就相当于将技术上的需求转加到硬件上...

第二种途径,缩短出块时间。一方面,出块时间太短,可能会导致区块的数据不满,甚至可能是空块,其实这反而会浪费系统,造成IO((Input、Output)压力过大;另一方面,缩短出块时间,虽然效率大大提高,但势必要大量的减少分布式节点运算,亦即更加中心化,这又很可能回到中心化垄断的局面,跟去中心化愿景背道而驰,信任会大大降低。

基于以上种种数据和分析,对于一个公有链来说,TPS并非越高越好,它需要基于一定的应用场景和实际用户需求、市场需求。基于目前的互联网和区块链发展情况而言,TPS过千已经能够满足大多数商业需求,过高的TPS反而会降低安全性、导致性能和硬件设备等产能过剩,以及很大可能会造成回到中心化垄断的局面等矛盾状况。

如果你认为区块链上的用户将达到每年双11那样的用户量和交易量的层级,并且需要搞类似11这种全民狂欢式的集中营销,那一般的tps还真hold不住。但显而易见,区块链短期以及长期都不会出现这种盛况,况且谁知道几年后的科技又将发展到何种程度,说不定更先进的模式和技术会不断涌现。当然,就全球性的区块链公有链而言,如果能够建立成熟的、完善的、真正的分布式点对点经济模型,由于全球不同地区的用户时差和作息不一样,那么交易高峰拥挤的情况也不太可能发生。

结语:

在现代金融理论中有一个非常著名的定理,即蒙代尔不可能三角(Impossible triangle)。一个国家不可能同时实现资本流动自由,货币政策的独立性和汇率的稳定性。也就是说,一个国家只能拥有其中两项,而不能同时拥有三项。如果一个国家想允许资本流动,又要求拥有独立的货币政策,那么就难以保持汇率稳定。如果要求汇率稳定和资本流动,就必须放弃独立的货币政策。

其实放在区块链领域,放在公有链领域,蒙代尔不可能三角定理依旧适用。效率、安全性和“去中心化”三者无法同时实现,对照当下所有公有链,你会发现都只能在某两项方面比较出色,另外一项就相对欠缺。

所以一个真正成熟完善的公链,并不是在某方面比较擅长,而是能在这三者上做好平衡和取舍。

如开篇所列举的区块链公链dapp现状,现阶段的首要任务还是普及推广区块链技术、思想以及相关知识,才能实现进一步扩大区块链Dapp的落地和普及,最终才能真正成熟完善、落地应用。而并不是一味吹嘘夸大自身的TPS。

就好比一个风景秀丽的小山村,政府准备把他打造成旅游风景区,那么当这个风景区初步建成之后,政府下一步要做的事情是什么呢?难道就是简单的把风景区周围修上四通八达的高速路,然后一个劲对外宣称“我们这风景区交通四通八达,不堵车,不拥挤!”这样一个吹嘘四通八达的高速路有用吗?如果首先去重点介绍、推广、宣传风景区的特色和内涵,大力招商引资,让更多的人知道有这么一个好玩的风景区,慢慢一步步让风景区先热闹起来......这样做是不是更合适一些呢?至于那四通八达的交通,那是你风景区基础自带的功能,无需过多张扬。

以上内容仅代表小行个人理解和认知,欢迎指正评论,谢谢。

小行寄语:愿每一个爱写作的人,心中有杆良心称,手中执笔有公正。愿您的文笔水平更上一层楼,在文字世界里收获更多物质和精神上的收益,愿每一个爱写作的伙伴在每一次合上笔盖或者敲击键盘entet键的一刹那,都有着侠客收剑入鞘的潇洒、骄傲和满满的成就感!

你可能感兴趣的:(从EOS和以太坊的DAPP发展现状浅聊公链的TPS)