写点什么

可扩展性 DApp:极速前进!

  • 2018-09-23
  • 本文字数:2247 字

    阅读完需:约 7 分钟

采用区块链的最大障碍是可扩展性。消费者对区块链的性能和响应能力的期望,被移动和桌面应用给破坏殆尽。1994 年人们尚能接受的延迟,在 2018 年断然是不可能再被人们接受了。面向生产就绪的可扩展性解决方案的研究缓慢的进展,扼杀了人们对去中心化应用(decentralized application,DApp)的开发和支持的热情。

DApp 无法挽留用户(参见 http://u6.gg/e8eGX )。像以太坊(Ethereum)这样的智能合约加密货币平台的性能令 DApp 步履维艰。gas 成本之高,吞吐能力之低,确认速度之慢,这些就是区块链平台面临的主要问题。

尽管区块链平台存在可扩展性方面的问题,但在过去几年中,在解决去中心化的区块链网络的可扩展性问题的方面出现了一些值得注意的动态发展。

智能合约平台和 DApp 使用面临的问题

以太坊创始人 Vitalik Buterin 称,区块链网络在初始阶段和开始阶段所面临的一般限制,可以概括为可扩展性的三角问题(Scalability Trilemma):安全性(Security)、去中心化(Decentralization)和可扩展性(Scalability)三者不可兼得,需要进行必要的权衡(参见 http://u6.gg/e8eGp )。

为了确保健壮的安全性和去中心化,以太坊牺牲了可扩展性。作为一个图灵完备(Turing-complete)的智能合约平台,以太坊面临的可扩展性问题因需要扩展到生产阈值所需的复杂性而变得更为复杂。然而,尽管 DApp(特别是游戏)存在一些问题,如网络拥塞期间异常高的 gas 成本,但以太坊仍然是 DApp 中最受欢迎的平台。

网络效应是 DApp 开发者的强大动力。大多数 DApp 开发者仍然在继续开发以以太坊为基础的应用,尽管眼下以太坊受到由于庞大用户群(即客户)而存在的局限性。因此,就算开发者开始偏离以太坊进行构建,但他们也需要一个大幅改善的平台,采用前瞻性的方法,并有巨大的吸引力来吸引开发者长期迁移。

以太坊的局限性凸显了可扩展性 DApp 留住用户的迫切需求。DApp 游戏就代表了最好的例子,因为它们过于昂贵以至于无法供人们去玩,而且实际的游戏玩法还存在很多不足之处。只要你去问任何玩过以太机器人(Etherbots)的玩家,或者去看看 DappRadar 上的顶级 DApp(参见 http://u6.gg/e8eFQ ),你就会注意到,排名靠前的 DApp 大多是 DEX、赌博平台或者专注于加密收藏而非游戏玩法的游戏(即 CryptoKitties)。

那么,DApp 究竟要如何开始留住大量用户呢?为了得到广泛的采用,它们需要与在集中式服务器上传统应用的可扩展性和响应性进行匹配。一些平台,如 Gods Unchained ,采用了混合方法在集中式服务器上进行游戏,并在区块链上使用了资产。

在集中式服务器上构建应用,与最初构建 DApp 的整个概念背道而驰。这就是为什么有很多富有吸引力的解决方案竞相推出第一代可扩展性 DApp 的原因。

有前景的解决方案

可扩展性解决方案形态各异,高矮不一,面向平台或与平台无关的解决方案尤为如此。许多聚焦可扩展性的面向平台的解决方案包括 EOS、Zilliqa 和 DFINITY。对于 DApp 而言,在应用程序特定级别上最受关注的可扩展性解决方案是第 2 层解决方案。这些创新包括状态通道(State Channels)和侧链技术(Sidechains)等。

最知名的状态通道是比特币的闪电网络(Lightning Network,LN: https://lightning.network/ ),这是一种让比特币(以价值为中心的支付解决方案网络)达到主流应用所需水平的极好方法。尽管状态通道能够促进链下双向数字支付,但其局限性包括巨大的通信开销,以及需要用智能合约特定语言进行编写。

此外,要实现任意状态机让 DApp 达到最优可扩展化状态,广义状态通道是必要条件。而这类状态通道目前仍然处于繁重的工程和理论开发阶段。

有前景的 DApp 可扩展性创新,最近成为 DApp 游戏的头条新闻。具体来说, Loom Network 对侧链的应用(他们称之为 Dappchains)确实有推出新一波 DApp 的潜力。Dappchains 有效地充当与以太坊挂钩的侧链,通过他们自己的 DPoS 共识来扩展到主流集中式应用的级别。这是一种特定于应用程序的侧链形式,值得人们继续关注。

以太坊的 Plasma(参见 http://u6.gg/e8eDY )实现也是一个链下侧链实现,侧重于连接到以太坊的主“根链”的“子链”,用于卸载计算和缓解网络拥塞。值得注意的是,这个阶段的 Plasma 只处理加密资产的安全传输,而非一般的状态变化。

最近,初创公司 Binary Mint( https://www.tenfoldprotocol.io/ )发布了 Tenfold 协议(参见 http://u6.gg/e8eSt ),就是一个令人信服的案例,说明了 DApp 的生产就绪可扩展性。Tenfold 协议主要由三个组成部分组成:状态注册表、验证器网络和流动性市场。

每个 DApp 都是一个单独的状态注册表,从根本上说,它们都是一个“代币组织的注册表”(Token-Curated Registry,TCR)(参见 http://u6.gg/e8eW6 )。有界与无界的定义还是有根据的。无界交易进行的是资产转移,如发送 ETH(以太币)。至于有界交易可能就是社交媒体的帖子、区块链游戏(如 Dragon Leveling)或者小额交易(micro-transaction)。

Tenfold 协议是通过使用加密经济安全模型处理链上的无界交易来实现安全性最大化,以及过渡到链下的有界交易来区分有界交易和无界交易。值得注意的是,这使得 Tenfold 协议的性能大幅提高,同时降低了 gas 成本,又可以实现语言无关性,并与 Plasma 相兼容,可供开发者立即使用。

结语

可扩展性 DApp 的竞争伴随着去中心化可扩展性方面的新技术,其发展历程引人入胜。更为复杂的面向平台的可扩展性解决方案,或特定于应用程序的创新是否会吸引下一代的 DApp 用户,让我们拭目以待!

原文链接: The Amazing Race For Scalable dApps

感谢杜小芳对本文的审校。

2018-09-23 09:431800
用户头像

发布了 376 篇内容, 共 205.0 次阅读, 收获喜欢 949 次。

关注

评论

发布
暂无评论
发现更多内容

JavaScript中的作用域和预解析

你好bk

JavaScript 大前端 ES6 HTML5, CSS3 12月日更

支付宝商户号稳定性解决方案

hackstoic

支付宝 解决方案 To B业务

【Promise 源码学习】第十一篇 - Promise.all 的实现

Brave

源码 Promise 12月日更

Flink 实践教程-进阶(2):复杂格式数据抽取

腾讯云大数据

flink 流计算 Oceanus

Mac 常用远程连接 ubuntu 工具对比

悟空聊架构

28天写作 Mac 软件 悟空聊架构 12月日更 远程连接

世界女性科技群落(二):种姓制度与数字微光下的生长录

脑极体

linux常用命令-历史命令和自动补全

Java个体户

Linux

Flink 实践教程-入门(9):Jar 作业开发

腾讯云大数据

flink 流计算 Oceanus

搭建K8s容器化应用的开发调试环境

xiaoboey

Docker Kubernetes k3s Telepresence Skaffold

如何调用潜意识有效收集演讲素材-从右脑到左脑的切换

将军-技术演讲力教练

如何设计微服务架构

天天向上

架构实战营

音视频实战(1)- 音频质量关键指标之QoE

liuzhen007

签约计划第二季

关于元宇宙的一些认识

李印

学习笔记 元宇宙

Python Qt GUI设计:QTableView、QListView、QListWidet、QTableWidget、QTreeWidget和QTreeWidgetltem表格和树类(提升篇—1)

不脱发的程序猿

Python qt GUI设计 Qt Company 表格和树类

实用机器学习笔记三:网页数据抓取

打工人!

机器学习 学习笔记 12月日更 实用机器学习

34 K8S之ServiceAccount及X509数字证书

穿过生命散发芬芳

k8s 28天写作 12月日更

<<长津湖>> 有感

Tiger

28天写作

一个简单的例子教会您使用 javap

汪子熙

Java 性能调试 28天写作 12月日更 javap

浅谈应用架构设计思路

陈俊

应用架构 设计指南

Vite2 + Vue3 + TypeScript + Pinia 搭建一套企业级的开发脚手架【值得收藏】

前端开发爱好者

typescript 大前端 Vue3 Vite2

JavaScript数据结构之 Array

devpoint

JavaScript ES6 array 内容合集 签约计划第二季

创业研发团队的组织建设-软件工作流程

wood

创业 敏捷开发 28天写作

数据一致性

卢卡多多

数据一致性 28天写作 12月日更

Git进阶(七): 打标签

No Silver Bullet

git 学习 12月日更

Flink 实践教程-进阶(1):维表关联

腾讯云大数据

flink 流计算 Oceanus

SAP 产品的 Field Extensibility

汪子熙

28天写作 扩展 ERP 12月日更 企业管理软件

su 和 sudo,你用对了吗?

xcbeyond

Linux 28天写作 12月日更 sudo

元宇宙:虚实相生的网络世界

石云升

学习笔记 28天写作 元宇宙 12月日更

Golang Gin 框架之日志 DIY(七)

liuzhen007

28天写作 12月日更

渗透测试如何入门?

喀拉峻

网络安全 安全

为什么不要急着告诉孩子答案?

Justin

心理学 教育 28天写作

可扩展性DApp:极速前进!_语言 & 开发_Yoav Vilner_InfoQ精选文章