博客>《Monad 开发者指南:兼容EVM的L1架构与实现》

《Monad 开发者指南:EVM 兼容的 L1 架构与实现》

在Monad 上实现更快、更经济、更优质的开发:深入探讨Monad的架构、性能特性及开发者工作流。

Quicknode

Quicknode

2025年6月9日 — 阅读时间12分钟

《Monad 开发者指南:EVM 兼容的 L1 架构与实现》

基于区块链的开发长期以来一直伴随着权衡取舍。更快的执行速度往往意味着中心化。兼容性通常是以性能为代价换来的。

为应对这一挑战,开发者们既开发了变通方案,也接受了现有局限,并围绕现有基础设施的限制来设计应用程序。第二层解决方案曾被寄予厚望,但同时也带来了新的复杂性——包括桥接机制、流动性碎片化以及额外的安全假设。

不过,Monad 为开发者带来了一项独特的承诺:它罕见地兼顾了高吞吐量、低延迟,并能与现有的Ethereum 工具无缝集成。

Monad 它承诺消除所有权衡取舍。在本篇博客中,我们将介绍Monad的架构、其独特功能,并借助Quicknode 帮助开发者入门开发。

拆解《Monad 》:区块链的基础知识

Monad 这是一个第一层区块链,在 Web3 领域中提供了一种难得的特点:无需妥协即可实现高性能。

它集成了高吞吐量、低延迟和完全的EVM兼容性——且无需开发者改变其开发方式。通过在保持Ethereum 兼容性的同时重构核心执行和共识机制,Monad 为链上应用开辟了新的可能性。

Monad 的独特之处在哪里?

  1. MonadBFT 确保达成快速、可靠的共识,并内置了对尾叉等常见故障情况的抗性。

  2. RaptorCast 加快了区块在网络中的传输速度,最大限度地减少了传播延迟。

  3. 异步执行将执行与共识分离,使系统在不降低速度的情况下拥有更大的计算空间。

  4. 并行执行可同时处理多项事务——在保持确定性的同时提升吞吐量。

  5. MonadDB 优化了状态的访问和存储方式,从而降低了因用户和合约活动频繁而造成的性能损失。

现在,让我们更深入地探讨一下Monad 能够大规模支持复杂、高吞吐量应用程序的技术基础。

Monad 技术揭秘:探索其技术栈

Monad 为 Web3 和区块链开发带来了诸多架构创新。让我们来了解这些创新如何从理论上的进步,转化为对开发下一代去中心化应用的开发者而言的具体优势。

MonadBFT

在区块链的生命周期中,共识通常是最耗时的环节。传统的BFT共识协议在应对“尾部分叉”场景时往往力不从心——这种情况下,网络分区会导致出现相互竞争的链尖,从而迫使系统进行成本高昂的重组,可能使最终确认延迟数分钟。

MonadBFT 对此进行了重新思考,提供了一种高性能的拜占庭容错共识机制,该机制针对高吞吐量和抗尾叉性进行了优化——确保诚实的验证者不会因网络延迟或恶意领导者而受到惩罚。

MonadBFT 为何重要?

无需依赖中心化排序器或委员会即可实现快速最终性(1秒),这既降低了风险,又提升了用户体验——用户和开发者无需再等待多次确认。这也使得订单簿去中心化交易所(DEX)或实时游戏等高频应用在不牺牲去中心化特性的前提下成为可能。

MonadBFT 是如何工作的?

MonadBFT 采用具有抗尾部分叉特性的流水线式共识机制,以确保即使在网络延迟的情况下,诚实的区块也不会被弃用。

领导节点会重新提交已获支持的区块,从而实现快速的最终确认(约1秒)。“扇出、扇入”的消息模式确保通信保持线性,而投机执行则在不牺牲去中心化的前提下,支持对延迟敏感的应用程序。

异步执行

传统区块链将共识与执行紧密耦合,要求在下一轮共识开始之前必须先完全处理完当前区块。这种耦合给计算复杂度带来了人为的限制,迫使开发人员在设计架构时不得不围绕共识的时间限制来调整,而非基于应用需求。

异步执行是Monad将共识与执行解耦的方法,使这两个过程能够并行进行。这种设计使每个过程都能充分利用区块时间,在不牺牲确定性的前提下显著提高效率。

为什么异步执行很重要?

应用程序可以包含计算密集型逻辑,而不会受到共识时序的限制。在保持快速区块生成时间的同时,集成多个预言机的复杂 DeFi 协议、链上 AI 推理或复杂的游戏机制都变得可行。

开发者可以专注于应用逻辑,而不是围绕共识瓶颈进行优化。

异步执行是如何工作的?

共识机制通过 MonadBFT 确定区块头,而交易的执行则在单独的管道中进行。节点会在区块被提议时即刻进行推测性执行,并在区块头得到确认后完成执行。

该模型通过允许同时进行多轮执行,同时又不阻塞共识进程,从而提高了吞吐量。

RaptorCast

随着交易量的增加,区块传播逐渐成为一个关键瓶颈。传统区块链网络受带宽限制的制约,较大区块的传输时间更长,从而导致时序波动,这不仅会影响共识的稳定性,还会增加网络分区或分叉的可能性。

RaptorCast 是Monad开发的自定义区块广播协议,旨在即使在高交易量的情况下,也能在全球分布式验证者集群中快速、高效地分发区块。

RaptorCast 为何如此重要?

快速的区块传播对于保持低延迟的最终性并最大限度地降低分叉风险至关重要。RaptorCast 确保区块能够以足够快的速度传送到验证者处,从而支持 1 秒最终性,使实时应用能够可靠运行。通过减少传播延迟,它还有助于保持网络同步。

RaptorCast 是如何工作的?

RaptorCast 采用擦除编码技术,将区块拆分为更小的数据块,这些数据块可通过多条网络路径并行传输。验证者仅需接收其中一部分数据块,即可重建完整的区块,从而在提供冗余保障的同时,降低了总带宽需求。

这种方法即使在部分网络路径出现拥塞或故障时,也能确保可靠的传输,并在各种网络条件下保持一致的块传播时间。

并行执行

传统的EVM链通过顺序执行交易——即逐笔处理——来确保确定性和状态一致性。虽然这种模型很简单,但它对吞吐量设定了硬性上限,并限制了能够在链上有效扩展的应用程序类型。

Monad 引入了乐观并行执行机制,在保持与EVM的兼容性及完全确定性的同时,允许同时处理多笔交易。

为什么并行执行很重要?

顺序执行会限制性能,并使订单簿去中心化交易所(DEX)、链上游戏或人工智能等实时应用难以扩展agents 。

并行执行消除了这一瓶颈,使高吞吐量工作负载能够集中处理在单个区块中。这使得应用程序运行更快、延迟更低,并能提供更好的用户体验,同时无需改变开发者编写智能合约的方式。

并行执行是如何实现的?

Monad 在假设事务之间不存在冲突的前提下,系统会推测性地并行执行事务。随后,调度层会分析读取和写入操作之间的依赖关系,以检测冲突。不冲突的事务会直接提交,而存在冲突的事务则会按安全顺序重新执行。

这种方法在既不牺牲正确性,也不需要定制工具的情况下,最大限度地提高了吞吐量。

MonadDB

状态访问是EVM执行过程中成本最高、耗时最长的环节之一。每次智能合约交互——尤其是存储读写操作(SLOAD/SSTORE)——都会触发高成本的操作,从而减慢区块生成速度并限制可扩展性。

MonadDB 是一个定制开发的存储引擎,旨在优化状态访问、最大限度地降低 I/O 开销,并支持高并发执行。

为什么 MonadDB 很重要?

在高吞吐量环境中,存储成为一个关键的瓶颈。MonadDB 减少了每笔事务所需的磁盘操作次数,从而加快了执行速度并降低了基础设施成本。

对于开发者而言,这意味着 更低的延迟、更低廉的 gas 费用,以及无需采用架构上的变通方案 ,且无需通过架构上的变通方案来实现。

MonadDB 是如何工作的?

MonadDB 采用了一种基于树的数据结构,该结构针对并行处理和缓存进行了优化。状态的读取和写入操作以异步方式处理,从而允许多个线程同时从存储中读取数据并进行更新。

结合Monad的并行执行模型,MonadDB可确保 即使交易量巨大,系统也不会因此变慢 ,使其成为可扩展链上应用程序的关键推动力。

随着Monad的核心架构和性能创新已全面揭晓,下一步就是看看这些创新如何应用到实际的开发工作流中。

在Monad 上进行构建和测试:开发者指南

Monad该平台的技术设计不仅停留在理论层面,一些先行团队已经在testnet 上构建和测试高性能去中心化应用(dApp),将其付诸实践。凭借完全兼容EVM、快速的最终性以及优化的状态访问,开发者体验依然熟悉,同时性能实现了显著提升。

正在进行的项目在Monad Testnet

Monad testnet 已迅速成为各类协议突破链上性能极限的试验场。从 DeFi 到 NFT,再到开发者工具,各项目都在测试 的低延迟和高吞吐量如何能够提升用户体验、降低成本并释放新功能。Monad

  1. DeFi 协议
    Covenant、Euler Finance、Uniswap、Renzo Protocol 和Stargate正在进行部署,以探索更快的结算、更紧凑的反馈循环以及在速度较慢的链上难以实现的低 gas 费策略。

  2. NFT平台
    、Magic Eden、Mintpad和 Opensea正在Monad 上进行测试,旨在简化铸造流程、缩短上架延迟,并支持更丰富、更实时的市场互动。

  3. 抽象化和用户入门工具
    Biconomy、Dynamic、Thirdweb、Privy 和Web3Auth正在进行集成,以提供无缝的用户体验——从零 gas 费交易到嵌入式钱包——同时确保安全性和性能不受影响。

  4. 钱包
    Ambire、Bitget、Bybit、Phantom 和Zerion等钱包正确保其用户能够以与 EVM 链同样便捷的方式和功能访问Monad 原生 dApp。

  5. 开发者基础设施提供商
    、Quicknode 、Alchemy、Chainbase、Dune和 Goldsky正在构建或支持专为Monad的性能架构量身定制的实时索引、分析和RPC服务。

这些早期的集成表明,整个技术栈中正逐渐形成一种共识:Monad的执行模型和开发者体验能够提供可靠且可扩展的基础设施。

在...上测试和优化应用程序的最佳实践Monad

Monad 它为开发者提供了构建大规模应用所需的原始性能和灵活性——但要充分利用其架构,需要采取与传统 EVM 环境略有不同的方法。

以下是一些关键实践,有助于最大限度地提升性能、将延迟降至最低,并确保去中心化应用(dApp)在生产环境中高效运行。

从第一天起就使用生产级基础设施

依托高性能、低延迟的 RPC 提供商(如 Quicknode ,可确保在开发和生产环境中与Monad (testnet )保持稳定的交互。Quicknode 提供:

  • HTTPS 和 WebSocket 支持

  • Monad-特定调试 API

  • 内置监控和日志记录

  • 实时数据,带有

    Streams

使用硬编码的 RPC 值降低延迟

Monad 上的某些Ethereum JSON-RPC 方法总是返回静态值:

  • eth_chainId:10143

  • eth_gasPrice:52 * 10^9

  • eth_maxPriorityFeePerGas:2 * 10^9

💡提示:请在前端或后端将这些值硬编码,而不是进行不必要的 RPC 调用。这样可以降低延迟,并减轻节点提供商的负载。

批量 RPC 调用以优化性能

在获取数据时,请避免发送多个单独的 eth_call 请求。

  • 在Monad 上使用Multicall3Testnet: 0xcA11bde05977b3631167028862bE2a173976CA11

  • 对于复杂的工作流,请部署自定义批量读取合同。

  • 使用支持批量处理的库(如 ethers.js 的 batch() 或 JavaScript 中的 Promise.all()),以减少往返次数。

使用索引,不要进行轮询

对于读取操作占比较大的应用程序或需要历史数据的应用程序:

  • 查询过去的事件或派生状态时,请使用索引器,而不是 eth_getLogs。

  • Monad-兼容的索引器包括:- Quicknode Streams (直接流式传输至Webhooks 、PostgreSQL等)

💡提示:索引器可减轻 RPC 端点的负载,并通过更快、更丰富的数据检索来提升用户体验。

在本地管理并发交易中的非ce值

在快速连续提交多笔交易时,请勿等待 eth_getTransactionCount 的返回结果。Monad 能快速完成区块最终确认,但 eth_getTransactionCount 仅反映已确认的交易。

提示:请在本地跟踪非ce值以避免错误,并并行提交交易。这在交易、游戏或自动化流程中尤为有用。

并行提交事务

Monad其快速的最终性意味着无需等待一笔交易确认完毕,即可提交下一笔交易。

提示:使用异步模式(例如 JavaScript 中的 Promise.all())来并行分发事务。这可以提高吞吐量并缩短事务处理流程。

并行性和吞吐量测试

设计合约和前端,以充分利用Monad的乐观并行执行机制。

  • 避免使用不必要的共享状态或合约级互斥锁。

  • 优先采用可在不同用户之间独立执行的模块化逻辑。

  • 在测试过程中模拟真实环境中的并发情况,以发现隐藏的瓶颈。

优化托管和后端基础设施

关于前端和服务器部署:

  • 静态托管:使用 S3 + CloudFront 以实现可扩展性和低延迟。

  • 无服务器函数:使用 AWS Lambda 或容器化应用程序(ECS/EKS)作为后端 API。

  • 数据库:使用 RDS 进行关系型数据存储,并将常用数据缓存起来,以减少计算开销。

通过与Monad的架构优势相融合,并规避传统架构的瓶颈,开发人员可以构建更快、更经济且更具可扩展性的应用程序——而无需更改其Ethereum 原生工具包。

基于Monad ,轻松实现Quicknode

Monad该架构开辟了一类全新的高性能应用程序——但仍需可靠的基础设施来使这些应用程序落地。这正是Quicknode 大显身手之处。

Quicknode 提供了一套专为Monad 量身打造的、完全托管的高速RPC及开发工具套件。从初始测试到生产环境部署,Quicknode 让开发者能够轻松开始开发,无需担心系统可用性、延迟或可观测性。

Quicknode 为Monad 开发者提供了哪些功能

  • 高性能 RPC 端点

全球边缘分发可确保 API 请求被路由到最近的节点,从而降低延迟并提升应用响应速度。

  • WebSocket 支持

对于实时应用,WebSocket 端点可即时访问新的区块、日志和合约事件——非常适合交易平台、游戏或人工智能agents 。

  • Monad-特定调试 API

借助原始块跟踪和事务级诊断,深入洞察执行过程,从而支持高级用例并加快故障排查速度。

  • Testnet 水龙头

testnet 通过 Quicknode的空头奖励活动 ——支持 MetaMask、Coinbase Wallet、Phantom 等钱包。

  • Quicknode SDK 和示例

利用 JavaScript、Python、cURL 等语言的现成示例,快速与Monad的 RPC 层进行集成。

  • Streams 用于实时数据

webhooks订阅区块链事件,并使用 Quicknode Streams。

准备好在Monad 上发布了吗?

立即免费创建一个Quicknode 实例endpoint ,用于Monad Testnet ,几分钟内即可开始开发。

无需配置。无需猜测。只有速度、规模和以开发者为中心的工具。

👉 在以下平台开始使用Monad :Quicknode

常见问题解答(FAQ)

我可以在Monad 上部署我现有的Ethereum 智能合约吗?

是的,Monad 支持完整的 EVM 字节码兼容性。您现有的 Solidity 合约无需任何代码修改,即可在Monad 上部署和运行。Hardhat、Foundry 和 Remix 等开发工具均可原生运行。

Monad mainnet 已经上线了吗?

Monad 目前正在运行一个面向公众的testnet ,开发者可以在该平台上构建和测试应用程序。testnet 具备mainnet 计划采用的完整架构和性能特征。

如何获取用于开发的testnet 令牌?

您可以每12小时从Quicknode 的Monad Testnet 水龙头处免费领取MONtestnet 代币。该水龙头支持通过MetaMask、Coinbase Wallet、Uniswap Wallet和Phantom进行连接。

Monad 的区块链安全吗?

是的,Monad 通过 MonadBFT 共识机制来保障安全性,该机制具备拜占庭容错性,并在去中心化的验证者基础设施上运行。性能的提升源于架构优化,而非以牺牲安全性为代价。

目前在Monad testnet 上有哪些已上线的去中心化应用(dApp)?

Uniswap、Euler、Stargate、Renzo Protocol、Magic Eden、Opensea 等平台已开始测试或集成Monad 。


关于Quicknode

Quicknode 成立于 2017 年,为开发者和企业提供机构级区块链基础设施。凭借 99.99% 的运行时间以及对 77 条以上区块链的支持,团队能够毫无妥协地构建和扩展链上应用程序。

今天就开始构建吧

随时掌握最新动态

将最新的工程见解、产品更新和 Web3 资讯直接发送至您的收件箱。