目录

区块链可扩展性:什么是 Layer 2 扩展解决方案

如果您是 web3 领域的初学者或以前使用过以太坊,您会注意到以太坊网络总体上并没有提供令人愉快的用户体验。后果可能会让开发人员感到沮丧,无论是高昂的汽油费还是较慢的交易处理时间。这个原因导致了Layer2扩展解决方案的创建,与以太坊网络相比,这些解决方案更便宜、更快。

如果您想知道Layer 2是什么以及为什么应该选择Layer 2而不是Layer 1,那么本文适合您。

什么是Layer 2扩展解决方案?

以太坊网络有两层,您可以在上面构建您的应用程序。您可以使用称为Layer 1的基础层或更快、更便宜的Layer 2。

注意:层的概念只是抽象的。没有构建任何代码来在以太坊网络上强制执行分层样式或分层系统。

Layer 1是存储和验证所有交易的基础层。Layer 1 还包括以太坊区块链的所有原生工具和功能,包括智能合约、共识和安全性。

想象一下Layer 1可与 Linus Torvalds 创建的原始 Linux 内核相媲美,所有其他 Linux 发行版均基于该内核构建。

Layer 2,就像 Linux 发行版的例子一样,建立在Layer 1之上。Layer 2是使以太坊网络更快的工具和解决方案!简单地说,它们建立在以太坊的Layer 1之上,以利用其安全性和智能合约等现有功能。

Layer 2的主要重点是通过从主网或Layer 1卸载交易来扩展以太坊网络,同时仍然利用Layer 1的强大安全功能。

一些流行的Layer2扩展解决方案包括:

  • Optimistic Rollups
  • Polygon
  • Arbitrum

注意:在构建应用程序时存在多个可用的Layer2扩展选项。稍后会详细介绍!

为什么我们需要Layer 2扩展解决方案?

你可能想知道,“为什么我们需要Layer 2?为什么我们不能直接扩展Layer 1”;解释为什么我们不能扩展Layer 1有点复杂,但让我们先了解基础知识!

以太坊网络每秒最多只能处理 15 笔交易,这与 Solana 等其他区块链甚至 VISA 等中心化应用程序相比非常慢,VISA 分别处理超过 50,000 笔交易/秒和 100,000 笔交易/秒。

与以太坊相比,Solana 和 VISA 的数据可能会让你发笑,但请相信我,当网络繁忙或堵塞时,情况就变得不那么有趣了,而且后果是可以亲身感受到的。

简而言之,以太坊主网(Layer 1)非常慢,使得在其上运行和开发应用程序成为一个活生生的地狱。

在繁忙时间,汽油价格可能会飙升!每当以太坊生态系统中发生有趣的事情时,它们就会飙升。– 是的,我指的是 Elon Musk 有趣的关卡!

例如,在 2017 年,当 Crypto Kitties 开始流行时,gas 价格处于历史最高水平——GWEI 超过 500+。

对于开发人员而言,高昂的汽油费和缓慢的交易是灾难的根源,并会严重影响用户体验。对于希望在以太坊区块链上构建应用程序以利用以太坊用户的巨大市场份额的开发人员来说,这个秘诀是一个祸根。

想象一下在以太坊网络上以当前状态构建游戏作为真实场景。我不是预言家,但我向您保证,由于高昂的汽油费和较慢的交易时间,您将失去所有用户。

但是为什么维护以太坊网络的开发人员不能解决这个问题呢?为什么他们不能只扩展Layer 1?要回答我们自己,他们不能!这是因为可扩展性三难困境。– 这就是它变得有点复杂的地方。

让我用最简单的术语解释一下。区块链建立在用三角形表示的三个主要支柱上:

https://hicoldcat.oss-cn-hangzhou.aliyuncs.com/img/20230406225210.png

  • 可扩展性
  • 权力下放
  • 安全

可扩展性三难困境不是以太坊独有的问题,而是许多其他区块链面临的问题,例如比特币ZCash区块链。

在实践中,我们可以忘记Layer 2而只扩展Layer 1。这样做时,我们需要向以太坊主网添加专门的以太坊节点。添加这些额外的节点将使网络更加集中且安全性降低。——这通常是个坏主意。

这就是为什么我们需要Layer2扩展解决方案。为了可扩展性而牺牲安全性和去中心化是一个很大的不!不!

现在您知道为什么我们不能扩展Layer 1,最好探索Layer 2选项供您作为开发人员使用。

有哪些扩展解决方案可供选择?

作为寻求更高效地构建您的应用程序的开发人员,现在有相当多的缩放实现供您使用!让我们来看看使用最广泛的那些。

Rollups 扩展解决方案

您知道您可以将额外数据存储为事务吗?我第一次发现这对我来说很奇怪,但这是可能的!

下次您使用 MetaMask 钱包进行交易时,您可以查看交易提示上的“数据”选项卡,查看交易中包含的额外数据。

它看起来像这样:

https://hicoldcat.oss-cn-hangzhou.aliyuncs.com/img/20230406225229.png

在高层次上,Rollups 允许您将多个交易打包到一个交易中,并将它们全部推送到一个区块链的层。

Rollups 通过减少发送到主网的交易数量来减少Layer 1的网络负载。这里有两个流行和知名的Rollup,即:

  • ZK Rollups
  • Optimistic Rollups

ZK Rollups 或Zero-Knowledge Rollups是一种智能合约,可以从以太坊主网中提取多个交易,将它们全部打包到一个交易中,并将验证证明发送回主网。

Optimism Rollups 与 ZK Rollups 有很大不同,但它们不是高层次的智能合约;相反,他们通过节点和智能合约功能充分发挥 EVM 的作用。

与 ZK Rollups 不同,Optimism Rollups 不做任何计算工作来验证交易。他们假设所有交易都是有效的并将它们提交给Layer 1。这极大地提高了Layer 1的可扩展性 100 倍。

然而,Optimism Rollups 有一个“挑战期”,即提交到Layer 1的交易可以被认为是欺诈的时间范围。当这种情况发生时,Optimism 交易会变得比 ZK Rollups 慢得多。

由于 Rollups 是像 Polygon 和 BSC 这样的 EVM,所以最流行的 Optimism Rollups 是 Optimism(我知道,这很混乱,他们是一个组织)和 Arbitrum(Optimism 的竞争对手)

这两个 EVM rollup 允许您以低成本扩展您的去中心化应用程序,同时实现更快的交易时间。

作为开发人员,Rollups 的一个实际用例是开发基于区块链的游戏。

例如,假设您在以太坊主网上部署了一款只有十名玩家的基于区块链的游戏。随着您游戏中的玩家数量增加到大约 10,000 人,您可能会遇到瓶颈和更慢的处理时间,更不用说高昂的汽油费了。随着时间的推移,你的游戏将变得昂贵。但是使用像 Optimism 这样的Rollup解决方案,您可以将所有这些区块链调用从主网(Layer 1)卸载到 Optimism(Layer 2)并且几乎几乎消除:

  • 高昂的汽油费。
  • 交易处理时间慢。
  • 给玩家带来超额成本。

如果那个特定场景也恰好是您,请试用 Alchemy 的 Arbitrum 或 Alchemy 的 Optimism API 并适当地扩展您的应用程序。

侧链

侧链是与主链并行运行的 EVM 可压缩区块链。与其父链(Layer 1)一样,它们也拥有完整的 EVM 功能。Polygon 区块链就是这样的一个例子。

Polygon 网络作为以太坊网络的子链运行,可以从主网收集信息并使用该信息执行智能合约或从主网卸载交易,验证它们并将它们发送回主网。

侧链是完美的更便宜和更快的Layer2扩展解决方案,适用于希望构建他们的应用程序并仍然利用以太坊区块链的全部功能的开发人员,例如智能合约和对不同区块链上的 Solidity 的支持。例如,Polygon 每秒可以处理大约 100,000 笔交易,即使具有完整的 EVM 功能,这也是非常快的。

还记得我们的区块链游戏示例吗?这也适用于使用 Polygon 链作为扩展解决方案的不同场景。

上面提到的Layer2扩展解决方案是以太坊网络上作为开发人员可用的最受欢迎的解决方案。然而,其他一些扩容解决方案值得一提,例如 Loopring Rollup,这是一种供开发人员构建和扩容 DeFi 应用程序的扩容解决方案。

哪一层比较好?

如果到目前为止您一直在阅读,那么您简直太棒了 :D 并且您可能还得出结论,Layer 2是开发人员的最佳选择。

然而,情况可能并非总是如此。虽然 Layer 2 在大多数情况下更好,但对于构建简单的 ERC20 代币或构建 NFT 项目等传统场景,在此类项目中使用 Layer 2 是不可取的,也不现实。

仅在Layer 1上构建确实有其好处。在Layer 1上构建一个完整的去中心化金融应用程序比在Layer2上要容易得多。这是因为实施某些Layer2解决方案既复杂又令人困惑。

一些扩展解决方案,如侧链,将要求您在Layer 1和Layer2工作,这会增加开发时间并使您作为开发人员的生活更加复杂。

尽管如此,对于需要处理数百笔交易的大型项目,最好在Layer2扩展解决方案之上构建,这将显着降低您的 gas 费用并加快您的去中心化应用程序。

结论

感谢阅读,希望您喜欢!让我知道你对这个主题的想法,并随时与我联系。如果您有兴趣了解:

  • Web3 和区块链
  • Web开发
  • 成为更好的程序员

原文:https://betterprogramming.pub/3-no-code-platforms-to-build-and-deploy-smart-contracts-11a51196796a

https://hicoldcat.oss-cn-hangzhou.aliyuncs.com/img/profile.jpg