首页 >>  正文

eclipse查看方法的源码

来源:baiyundou.net   日期:2024-09-25

原文作者:Lukasinho,GCR 研究团队

原文来源:globalcoinresearch

原文标题:Parallel EVMs: Monad, Sei v2, Neon & Eclipse

编译:Luffy,Foresight News

交易并行执行是一种有前景的区块链扩展技术,它是在不牺牲用户体验和分散流动性的情况下实现区块链广泛采用的必要条件。Solana 及其虚拟机(SVM)率先采用了并行执行而不是纯粹顺序执行的方法。相对于占主导地位的以太坊虚拟机(EVM)而言,这种方法更加复杂。最近,一些有潜力的项目试图克服这一障碍,为开发人员提供在熟悉的 EVM 环境中创建具有 Solana 的性能的应用程序的可能性。

在本文中,我们将研究 Monad、Sei V2、Neon EVM 和 Eclipse,它们都是致力于此类并行 EVM 解决方案的潜力项目。我们将深入研究这些网络的设计方式、优缺点,并探讨这些并行区块链的未来发展。

并行 EVM 的前景

毫无疑问,以太坊是应用最广泛的智能合约区块链,拥有最强大的社区和生态系统。然而,尽管以太坊正在不懈努力以实现可扩展性,但从分片到 Rollup 的转变使得以太坊作为基础层的可扩展性变得具有挑战性。虽然以 Rollup 为中心的方法可以成为可扩展性的解决方案,但它并非没有缺点。由于与许多不同的区块链交互而导致的流动性碎片和糟糕的用户体验将是一个需要克服的巨大障碍。

如果我们所知道的以太坊在另一个平行宇宙中达到 10,000 TPS 或更高呢? Monad、Sei、Neon 和 Eclipse 是完全兼容 EVM 的区块链,它们利用并行执行来实现可扩展性。

来源:twitter.com/SeiNetwork

Monad

Monad 是一个高性能 EVM 区块链,旨在通过并行执行显着增强可扩展性和交易速度。它对四个关键领域进行优化,使其成为高性能区块链。

Monad BFT

Monad BFT 是 Monad 区块链用来达成交易排序一致性的共识协议。它允许网络中的许多节点安全地就交易顺序达成一致,即使某些节点不诚实或离线。Monad BFT 以基于领导者的两阶段提交方式运行,从 2f+1 个验证者收集阈值签名,这些签名使用基于配对的加密技术聚合成单个签名。与单独签名相比,这提高了效率、可扩展性并减少了存储空间。

延期执行

Monad 将共识和执行分开以提高性能。共识层涉及节点就交易顺序达成一致但不执行交易。执行层由独立执行排序交易以更新状态的节点组成。通过分离共识和执行,Monad 通过更大的交易打包实现更快的共识。1 秒的单个 slot 实现(single slot finality),执行延迟小于 1 秒,保证一致性的同时,在单个分片上实现高交易吞吐量。该架构将共识和执行解耦,以优化交易排序和处理。

并行执行

Monad 允许在区块内并行执行交易以提高效率。它使用 Optimistic 的方法,在上一步的执行完成之前就开始执行新交易。为了应对不正确的结果,Monad 跟踪输入 / 输出并重新执行不一致的交易。静态代码解析器可以预测依赖关系,避免无效的并行性,并在不确定时恢复到简单模式。这种并行执行增加了吞吐量,同时减少了交易失败的可能性。

Monad DB

Monad 执行异步 I/O(输入 / 输出操作)以实现并行交易执行,这与传统系统在处理下一个交易之前必须等待 I/O 结果不同。通过异步 I/O,CPU 可以处理其他交易,而无需等待特定的 I/O 结果。 Monad DB 利用先进的 Linux 内核功能来实现高效的异步磁盘操作,消除同步 I/O 的限制。传统的以太坊数据库缺乏异步 I/O 支持,但 Monad DB 的构建是为了充分利用它。这种异步方法在保持以太坊兼容性的同时,大大提高了交易处理的效率。

Sei

Sei V2 是对 Sei 网络的大范围升级,旨在成为第一个完全并行的 EVM。此次升级将为 Sei 提供以下功能:

向后兼容 EVM 智能合约

开发人员能够将其他 EVM 兼容链上已经审核的智能合约直接移植到 Sei,而无需更改任何代码。 Sei 节点将导入 Geth(以太坊虚拟机的 Go 实现),Geth 将用于处理 EVM 交易,任何由此产生的更新(包括状态更新或对非 EVM 相关合约的调用)都将通过 Sei 为 EVM 创建的特殊接口。这是一个重要的升级,因为它简化了将现有智能合约从以太坊等其他区块链转移到 Sei 的过程。

Optimistic 并行化

与 Monad 一样,Sei V2 将使用 Optimistic 并行化。这允许区块链同时执行交易,而不需要开发人员定义任何依赖项。当发生冲突时,区块链将跟踪每个交易触及的存储部分并按顺序重新运行这些交易。这个过程将递归地持续下去,直到所有未解决的冲突都得到解决。

Sei DB

Sei DB 是一种新的双组件数据结构,用于优化存储并防止区块链膨胀。它将状态存储与状态提交分离,改变了传统的单 IAVL 树设计。与单树相比,这种双结构减少了延迟和磁盘使用,同时提高了多线程读写性能。

Neon EVM

Neon EVM 是基于 Solana 区块链构建的完全兼容 EVM 的解决方案。它将作为 Solana 内的智能合约运行,允许开发人员部署以太坊 DApp,而无需进行任何重新配置。

Neon EVM 使基于 Solidity 和 Vyper 的 DApp 能够利用 Solana 的网络优势:低费用、高交易速度和并行交易执行能力。

这意味着使用开发人员熟悉的以太坊生态系统工具创建与 Solana 兼容的合约。 Neon EVM 使关键的以太坊 DApp 工具与 Solana 兼容,包括 Vyper、Solidity、 MetaMask。该解决方案允许任何以太坊应用程序以最少的重新配置在 Solana 上运行,其中包括 Uniswap、SushiSwap、0x 和 MakerDAO。

Eclipse

Eclipse 是以太坊上的下一代 Optimistic Layer 2 解决方案,由 Solana 虚拟机 (SVM) 提供支持。通过将以太坊的结算功能与 SVM 的高性能和并行执行相集成,Eclipse 主网提供了速度、可扩展性和安全性的结合。它使用以太坊进行结算并将 ETH 作为 Gas 代币,在提高交易吞吐量的同时确保兼容性和安全性。

Eclipse 旨在解决以太坊的可扩展性挑战,利用 Celestia 实现数据可用性,利用 RISC Zero 实现零知识证明,旨在在不牺牲安全性和去中心化的情况下实现更大的交易容量。也就是说,Eclipse 团队将继续密切关注以太坊的 EIP-4844 升级,并考虑在未来迁移到以太坊的 DA,这将进一步提高 Eclipse 的安全性。

SVM 及其 Sealevel 运行时支持并行交易执行。与 Sei V2 和 Monad 一样,不涉及重叠状态的交易可以并行执行,而不是顺序执行。

来源: Eclipse.builders

为了实现 EVM 兼容性,Eclipse 将集成 Neon EVM。这将为 Eclipse 主网带来完整的 EVM 兼容性(包括以太坊字节码和以太坊 JSON-RPC)。由于每个 Neon EVM 实例都有自己的本地费用市场,因此应用程序只需部署自己的合约即可获得应用程序链的所有优势,而不会破坏用户体验、安全性或流动性。这样,除了作为 Layer 2 网络之外,Eclipse 还旨在成为蓬勃发展的第 3 层生态系统的基础设施层。 Arbitrum 和 Base 等引领趋势的 Layer 2 网络最近也已开始发展 Layer 3。另外,Solang 编译器可以将 Solidity 智能合约代码编译为 SVM 字节码。这使得开发人员可以在 Eclipse 上部署 Solidity 合约,而无需使用 Neon EVM 来启动自己的 Layer 3。

比较

在两个独立的并行 EVM 链中,Monad 似乎受到更多关注。尽管与 Sei 相比,关注者数量要少得多,但他们的帖子产生了更多的互动,并且最近的 Twitter Space 中出现的人数是 Sei 主持的 Space 中的三倍。这表明 Monad 拥有更加热情、活跃的社区。尤其是以太坊社区似乎对其即将推出的产品感到非常兴奋,这将使 Monad 处于抢占早期炒作和采用的有利位置。

尽管 Sei 的性能指标似乎高于 Monad,而且它们是先推出的,但 Sei 受到的关注较少。自从宣布并行化 EVM 以来,Sei 出现了大规模反弹,但事实上,它早些时候已经作为 CosmWASM 链推出,并且它的代币已经流通了一段时间,这让它失去了新鲜感。 Sei 的叙事似乎比 Monad 弱,并且由于其 Cosmos 背景,以太坊社区成员不太将其视为以太坊生态项目。

由于 Solana 即将推出的 Firedancer 客户端,Neon EVM 和 Eclipse 将提供比 Monad 和 Sei 更优越的性能,这说明了 EVM 相对于 SVM 所面临的性能缺陷,即使它也实现了并行化。尽管有这样的性能优势,并且比其他项目更早推出主网,但 Neon 仍难以在市场上找到自己的位置。至少,Neon 早期采用率非常令人失望。这可能是因为 Neon 并没有真正的目标受众。以太坊社区对 Solana 高度怀疑,因为它不可靠、缺乏安全性并且缺乏去中心化。因此,他们对在 Solana 上启动应用程序不感兴趣。另一方面,Solana 社区很高兴使用 SVM,并且没有兴趣切换到 EVM,这使得 Neon EVM 处于一个没有人真正感兴趣的尴尬境地。

Eclipse 是否面临同样的命运呢?作为以太坊 Layer 2,它利用了以太坊的安全性、去中心化和可靠性。但由于在基础层运行 Solana 虚拟机,它可能仍然面临以太坊社区的怀疑。统一了以太坊和 Solana 的优点,同时也巧妙地融入了模块化区块链设计的趋势并支持 DApp 特定的 Layer 3 Rollup,Eclipse 似乎踏准了当前 Web3 中所有热门的趋势和叙事。从其设计、技术和性能来看,Eclipse 应该处于完美的位置,可以围绕其发布创建一个强有力的叙事。Eclipse 目前来看是很有希望的,它正在保持强劲发展势头,并正在招聘更多的营销专业人员。

未来展望

Web3 领域竞争非常激烈,许多 Layer 1 和 Layer 2 解决方案都在争夺注意力。成功不仅仅取决于拥有最先进的技术,创建引人入胜的故事、建立强大的社区以及吸引开发人员同样重要。这使得在后者方面表现出色的区块链处于有利地位。

Monad 在即将到来的并行 EVM 叙事中占据了有利的位置。尽管性能略低于 Sei,但 Monad 获得了最多的炒作和关注。然而,加密货币的故事很快就会消失。 Monad 将不得不利用这种短期炒作来引导他们的生态系统。

除了相互竞争之外,这些竞争者还必须与以太坊、Layer 2 以及 Solana、Avalanche 和 Polygon 等第二代区块链竞争。这些对手都已经有了更多的时间来发展他们的社区和生态系统。闪亮新产品的吸引力、创新技术和令人印象深刻的性能可能会在 Monad、Sei 和 Eclipse 推出时引起人们的关注。长期的成功将取决于他们是否能够利用这种关注并让用户和开发者持续开发自己蓬勃发展的生态系统和社区。

","gnid":"9ef575e31c1c5cfe7","img_data":[{"flag":2,"img":[{"desc":"","height":"270","title":"","url":"https://p0.ssl.img.360kuai.com/t01af1c0d4e5e8139c1.jpg","width":"486"},{"desc":"","height":"810","title":"","url":"https://p0.ssl.img.360kuai.com/t0121daacbef3f9e051.jpg","width":"1440"},{"desc":"","height":"416","title":"","url":"https://p0.ssl.img.360kuai.com/t01e0ffba3914cfff6c.jpg","width":"1120"},{"desc":"","height":979,"title":"","url":"https://p0.ssl.img.360kuai.com/t010164dc361a514fc2.jpg","width":1181}]}],"original":0,"pat":"art_src_3,fts0,sts0","powerby":"cache","pub_time":1710749460000,"pure":"","rawurl":"http://zm.news.so.com/e068599c3244c7d6659b4b792b81f8cd","redirect":0,"rptid":"18878c0a2da38708","rss_ext":[],"s":"t","src":"火星财经","tag":[],"title":"一览并行 EVM 四杰:Monad、Sei V2、Neon 与 Eclipse

卞追谦5261Eclipse查看某个方法被哪些类调用 -
祖义龚13749301299 ______ 方法一:打开该类,在类的定义上即类名上,右键-->References--->Project ,就可以查看该类是否被工程中的其他Java文件引用过;但是如果在JSP页面,这个方法查不出来 方法二:打开eclipse,使用快捷键,Ctrl+h,会弹出一个对话框,找到File Search这个页签,在Containing Text下的文本框中输入要查找的这个类名,然后点击Search按钮,就会在该项目下,全局查找该类名.这种查找方法,可以把所有文件(包括java文件,以及JSP文件)中引用该类的都能找出来

卞追谦5261如何查看项目使用的Eclipse版本和Jdk的版本 -
祖义龚13749301299 ______ 工具: eclipse 方法: 查看eclipse版本 1. Eclipse解压目录中找到readme文件夹双击打开里面有个readme文件双击打开 2. 如图第二行就是版本信息 查看jdk版本 1. 选择Window->Preference->Java->installed JREs,看到勾选的JDK即为使用的jdk版本

卞追谦5261eclipse怎样列出所有方法 -
祖义龚13749301299 ______ 你可以点击界面右边的该Outline按钮 可以列出该类相关的所有方法,Ctrl+O只是搜寻输入的方法

卞追谦5261如何查看Eclipse的版本是多少? -
祖义龚13749301299 ______ 进入到eclipse安装目百录下,有一个.eclipseproduct文件,用记事本或者Notepad++打开,内容如度下: name=Eclipse Platform id=org.eclipse.platform version=3.7.0 从version=3.7.0就可以看出你的eclipse版本了. 另一种方法: 打开eclipse 导航: help-->About Eclipse 弹出框下方会显示一排内logo,点击eclipse的那个logo(鼠标悬容停,提示“Eclipse.org”)即可显示你的eclipse的版本(Eclipse Platform).

卞追谦5261如何在eclipse中查看一个类中的所有方法和域 -
祖义龚13749301299 ______ Ctrl+Shift+G 查找类、方法和属性的引用.这是一个非常实用的快捷键,例如要修改引用某个方法的代码,可以通过【Ctrl+Shift+G】快捷键迅速定位所有引用此方法的位置.

卞追谦5261怎么查看eclipse各个版本号 -
祖义龚13749301299 ______ 您好,只有在安装插件时才会需要到,有人就曾在安装svn时为了找到对应Eclipse版本号.而浪费了好长时间,其实要知道很简单(我说的是要查看Myeclipse中集成的Eclipse的版本号).如果你的Myeclipse的安装目录是D:/MyEclipse 6.6,那么只要找到MyEclipse 6.6/eclipse/readme下的readme_eclipse.html文件即可,双击打开,看,版本号就显示了我的是3.3.2.

卞追谦5261如何在eclipse中查看一个类中的所有方法和域 -
祖义龚13749301299 ______ Ctrl+Shift+G 查找类、方法和属性的引用.这是一个非常实用的快捷键,例如要修改引用某个方法的代码,可以通过【Ctrl+Shift+G】快捷键迅速定位所有引用此方法的位置.

卞追谦5261如何查看eclipse是32位还是64位 -
祖义龚13749301299 ______ 对于:eclipse 第一种:找到Eclipse的解压目录就是你的Eclipse.exe 所在的目录,找到 .eclipseproduct 文件双击打开,最后的数字就是Eclipse的版本号 第二种:Eclipse解压目录中找到readme文件夹双击打开,里面有个readme文件双击打开,...

卞追谦5261eclipse 查看变量或方法在什么地方被调用的快捷键 -
祖义龚13749301299 ______ 双击选中变量或者方法 Ctrl+shift+G 即可

卞追谦5261怎么看自己eclipse的版本 -
祖义龚13749301299 ______ 启动Eclipse,如图:点击菜单“Help”-“About Eclipse”,如图:在About Eclipse对话框中,可以看到Eclipse的版本及版本代号.如图:图中显示的版本为4.4.2,版本代号为Luna.如果About Eclipse对话框只显示了Eclipse的版本,则可以参考后续的步骤获取版本代号

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024