织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 区块链

a16z 前合伙人:从架构角度深入解析 Web 3.0 与 Web 2.0 应用区别(5)

时间:2021-09-28 20:08来源:未知 作者:admin 点击:
The Graph 上述方法的确可行,但它同时也有一定的不足。比如说,你可能在智能合约部署完成后才发现,自己要发送的事件并没有包含在合约当中,这该如

The Graph

  上述方法的确可行,但它同时也有一定的不足。比如说,你可能在智能合约部署完成后才发现,自己要发送的事件并没有包含在合约当中,这该如何是好?不幸的是,你只能重新部署一个新的智能合约,并将该事件与相关数据放入新的合约当中。不仅如此,回调函数也很难处理不同的 UI 逻辑。

  这时就该让「The Graph」上场了。

  The Graph 是一个链下数据索引方案,可以方便人们在以太坊上查询数据。在 The Graph 中,你既可以定义哪些智能合约需要索引、哪些事件与函数调用需要监听,也可以规定如何将传入的事件转化为前端逻辑(或任何正使用 API 的程序)可处理的实体。它使用 GraphQL 作为查询语言,这种语言深受前端工程师的喜爱,因为与传统的 REST API 相比,它能传达更多信息。

  通过索引区块链数据,The Graph 可以让我们在应用逻辑中查询链上数据,并且几乎不会出现延迟的情况。

  现在,你的 DApp 架构大概是这样:

  现在只剩下最后一个重要问题:扩容。

DApp 的扩容

  你可能已经听说了,以太坊不具备可扩展性,至少目前还没有。

以太坊 Gas 平均价格

平均交易费用

平均区块规模

  显然,问题在于,以太坊上 Gas 费用高昂且区块几近饱和,在它上面搭建 DApp 会给用户带来非常不好的体验。不过值得庆幸的是,一些相关方案正在开发当中。

  Polygon 便是一个很受欢迎的 Layer 2 扩容方案。在 Polygon 中,交易的处理与执行是由「侧链」而非主链来完成的。这些侧链是与主链相连的二级区块链。每隔一段时间,侧链就会将其最近的区块聚合起来提交给主链。

  同样,Optimistic Rollup 和 zkRollup 也属于 Layer 2 方案,工作原理也都类似:他们用「Rollup」智能合约在链下将大量交易进行捆绑,然后定期将这些交易提交给主链。

  我们需要知道的是:Layer 2 方案是将交易的执行(即速度较慢的部分)放在链下进行,而在链上只储存交易数据。这样一来,区块链就能得以扩容,因为我们不用再在链上执行每笔交易了。同时,这也让交易进程加快、成本降低,而且在必要时,Layer 2 方案还可以与以太坊主链进行通信。

全貌

  如果到此你感觉头晕目眩、迷惑不解,也属于正常现象,因为将所有这些工具整合在一起本来就十分复杂,容易让开发者感到焦头烂额。但是不用担心,开发框架的不断问世将会切实提升开发者的工作体验。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容