酸饼博客
关注区块链技术应用与数字货币

EOS分析①:EOS是否真的能实现百万级别的TPS?

EOS的宣传文章里,常看到的一个卖点是“实现百万级的TPS”。我看了官方的白皮书,似乎没有这个说法,而是“支持百万级别的用户”。这完全是两个不同的概念。

“支持百万级别的用户”这个表述是有歧义的,究竟是支持总用户数百万级,还是日活跃用户100万,或者是小时、分、秒的活跃用户数。官方白皮书的说法似乎是日活跃用户,但一天发一个请求算是活跃,发10000……个请求也算是活跃,这里面的差别可大了。

由于“支持百万级别的用户”这个表述太含糊,在这里就不讨论这个。本文要探讨的是EOS能不能像那些宣传文章所说的那样,实现“百万级别”的TPS。

TPS是transactions per second的缩写,意思是每秒内的交易数量。可能很多人都不清楚百万级的TPS 是什么概念。大家可以看下支付宝官方的这篇文章:也许是史上最贵的2个字母——揭秘2017双11支付宝25.6万笔/秒峰值背后的技术

支付宝25.6万笔的峰值已经是当前全世界的最高记录了。阿里这么多年的技术积累才有这个成果,你觉得EOS开发团队的技术能力会比阿里还强吗?我对此是表示怀疑的。

那是不是EOS在吹牛,实现不了百万级别的TPS呢?那倒也不是,技术是在进步的,也许过几年硬件技术突然大爆炸,说不定仅凭堆硬件就可以堆出超高的TPS。

即使在现有的技术水平上,要实现百万级的TPS,其实也不难。

就拿支付宝举例。假设把支付宝的APP和网站分为每个省级单位一套,数据完全是独立的,一个省的用户在该省的支付宝数据库里面。这样,每个省的TPS峰值25万,30多个省级单位的支付宝加起来就将近1000万了。千万级别的TPS啊,牛不牛B,厉不厉害?

同样,EOS也可以利用类似的方式来实现。按照一个或多个纬度对数据进行分片,不同的片放在不同的服务器上。这样,理论上,只要无限的细分,无限的堆服务器,想实现多高的TPS都是可以的。

那为什么EOS可以用这种方式,而比特币、以太坊不用这种方式呢?没理由我一个不入流程序员能想到的,比特币和以太坊的开发人员想不到吧?

原因是比特币、以太坊是在网络架构上是去中心化的,节点之间有竞争出块权,要防止节点作恶和对作恶节点进行惩罚;EOS却不需要。EOS的这21个节点,系统认为这21个节点都是选民选出来的,不会做恶;如果做恶,就把他选下去。可以认为,EOS的这21个节点,实际上就是21个中心化服务器。

中心化的服务器,利用传统应用分库分表的做法,再加上有点歧义的文字游戏,百万级的TPS,真的可以实现。


suanbing-qrcode2

未经允许不得转载:酸饼 » EOS分析①:EOS是否真的能实现百万级别的TPS?
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

留言联系关于酸饼