Cointime

扫码下载App
iOS & Android

如何几分钟内开发和运行dApp?看看Gear Protocol 的产品逻辑!

Cointime Official

作者:Cointime.com 237

Gear Protocol是基于Substrate构建的智能合约平台,可让任何人在几分钟内开发和运行dApp。作为最友好的开发方式,Gear Protocol实现了具有任意逻辑和复杂性的智能合约。Gear智能合约以WebAssembly程序的形式运行,因此可以使用多种流行的编程语言(如Rust、C、C++等)进行编译。

该协议提供了简洁、直观且功能丰富的API,使得在多个网络上实现和运行程序变得简单。从技术角度来看,Gear Protocol通过独特的特性与众不同,允许开发者创建全新且以前无法实现的用户体验,包括使用Actor模型进行通信、持久性内存概念和WebAssembly执行环境。该协议定义了Actor作为通信实体所具备的特征。

通过支持创新的dApp、微服务、中间件和开放API,Gear Protocol将推动Web3技术的大规模采用。Gear Network既可以作为独立的L1网络,也可以成为Polkadot和Kusama生态系统中的平行链。通过在Gear Protocol上部署,开发人员可以充分利用Gear提供的各种优势。

Vara Network则是第一个独立构建和运行在Gear Protocol上的Layer-1去中心化网络。

Vara旨在为开发者提供构建去中心化应用程序的环境,推动Web3行业迈向新的层次。无需开发自己的区块链,任何人都可以在Vara网络上构建dApp并部署。

Vara通过搭建Web2和Web3之间的桥梁,为开发者打开了下一代去中心化应用程序的机遇,加速了Web3技术的采用,并引领了未来的发展。作为基于WebAssembly的本地区块链,开发者可以使用传统编程语言编写和编译代码。

此外,Vara Network提供低交易成本、质押、参与治理、验证者、提名者和大使计划等功能(以及未来的燃料费用回扣)。

平台特点

Gear Protocol拥有一些独特的特点,使其与其他平台有所区别:

1、真正去中心化

与其他平台不同,Gear智能合约能够自主触发其功能,而无需外部组件或服务来触发链上交易。传统智能合约通常需要用户发起交易才能唤醒合约,但在很多情况下,合约需要在满足特定条件时触发,例如到达特定时间点或发生特定事件。过去,这限制了智能合约的功能性,或者需要开发人员引入集中式服务来触发合约。

而Gear Protocol则基于对异步消息的支持,能够帮助合约开发人员实现具有延迟消息的任意合约逻辑,其可以在指定的时间段后或在特定事件发生时唤醒合约。这为智能合约带来更广泛的应用场景,释放了新的去中心化功能,并为区块链生态系统中的用户创造了更多价值。

2、持续的消息自动化

Gear中的每个消息(包括系统消息)的执行都会消耗“gas”。Gear Protocol引入了Gas Reservation的概念,允许创建可供程序进一步执行的Gas池。每个池子对创建它的程序是唯一的,如果程序的“gas_available”不足,则可以消耗该池中的gas。

Gas Reservation的一个重要优势是能够发送延迟消息,在未来的特定时间自动触发。这些消息与Gear中的其他消息类似,可以调用网络中的另一个智能合约或出现在用户的邮箱中。

最有趣的是,Gas Reservation允许程序在以后的某个时间向自身发送消息,使其在定义的时间段后继续执行。这使得智能合约可以实现自身无限次数的执行(前提是有足够的可用gas)。

这为在智能合约中实现与持续消息自动化相关的功能逻辑打开了广阔的可能性。延迟消息类似于cron作业,在其他区块链平台的智能合约中无法实现,除非使用外部资源。这种解决方案的显著优势在于消除了dApp中集中化组件的需求,确保它们完全在链上运行,并且实现了完全去中心化和自治。

核心技术一:Substrate

Substrate 是一个模块化框架,其通过将自定义或预构建组件与网络、共识机制、核心功能、安全性和治理功能组合在一起,实现了定制构建独特区块链的能力。

使用 Substrate 框架可以简化为特定应用创建不同区块链的过程。Substrate 提供了丰富的开箱即用功能,并允许开发人员专注于在协议之上创建自定义引擎。

Substrate 的主要功能如下:

1、无分叉更新

2、内置协调

3、支持 WebAssembly 的跨语言支持

4、轻客户端友好性

5、确定性最终性

6、无缝集成

Substrate 使 Gear 团队能够显著减少开发时间,专注于开发主要的 Gear 协议组件。Rust语言也确保了安全性和高性能。

Gear 独特的异步消息架构实现了在基于 Substrate 技术构建的网络之间的高效通信。这种无缝集成有助于提高网络功能和参与度的互操作性。

核心技术二:Actor 模型

Actor 模型是 Gear Protocol 的一个关键和独特特性,用于消息传递通信。在并发计算系统中,“消息传递通信”意味着程序通过交换消息进行通信。相比于“共享内存通信”,消息传递更易理解,并具有更好的性能特性。

Actor 模型框架支持异步消息传递和并行计算,大大提高了速度,并且更容易构建复杂的dApp。一般情况下,普通的 Actor 模型并不能保证消息顺序,但 Gear Protocol 提供了一些额外的保证,确保保留两个特定程序之间消息的顺序。

其中,Actor指的是Actor模型中的原子计算单元,可以发送和接收消息。在Gear中,Gear Protocol中的任何实例都是一个Actor,可以是程序(智能合约)或向程序发送消息的用户。每个Actor都有自己的内部私有状态,用户也有一个邮箱。通信是异步的,消息从邮箱中取出并分配到消息处理流中,在其中按照周期进行处理。

核心技术三:WebAssembly

WebAssembly是一种在网页中运行非JavaScript编程语言应用程序的方式。实际上,Wasm只是一个在现代浏览器上运行的虚拟机,但与过去必须使用JavaScript在网页中运行代码不同,Wasm使得可以使用非JavaScript编程语言在浏览器中运行代码成为可能。

WebAssembly虚拟机(简称Wasm)因其技术特性被证明比任何替代虚拟机更快。使用WebAssembly可以将Gear的智能合约直接编译为机器码并以接近本机速度运行。更高的速度意味着更低的交易成本和更高的效率。

所有的Gear程序和智能合约都作为WebAssembly程序运行。这意味着开发人员可以将其应用程序带到Web,并在Web浏览器中实现完全性能和应用程序的全部功能集,就像在Windows或Mac上以本机方式运行一样。开发人员实际上不需要直接编写Wasm代码,而是将Wasm用作其他语言编写的程序的编译目标。

WebAssembly解决的主要问题是无法在Web上使用除JavaScript以外的编程语言。尽管JavaScript是一种很好的编程语言,但它并不适用于大型应用程序的超高速执行。Wasm的革命性之处在于,它以完全安全的方式将其他编程语言编写的本机应用程序性能带到Web上。

Wasm在两个主要领域都可以显著提高速度。

首先,它应大幅提高应用程序的启动速度。事实上,已经使用Wasm的应用程序已能够将应用程序的启动时间减少一半,并且随着更多优化的进行,启动速度只会进一步增加。这将使庞大的应用程序能够非常快速地加载。

其次,Wasm还可以显著提高吞吐量,这意味着一旦代码被编译,它将运行得更快,使应用程序更高效和响应迅速,从而显著改善用户体验。

核心技术四:持久内存

Gear Protocol的另一个重要特点是其持久内存技术。这项技术使得开发更加简单,减少了复杂性,并与实际的硬件和操作系统的内存管理相匹配。

在Gear网络中运行的程序不使用传统的存储方式,而是将它们的完整状态进行持久化。这样做可以大大减少区块链上的API表面。同时,这种方法避免了特定领域语言的限制,可以使用更复杂的语言结构,如持久化的闭包和futures组合器。

Gear Protocol采用了巧妙的内存虚拟化技术,将内存分配和释放作为一级系统调用来处理。它还跟踪内存访问,并仅加载/存储所需的页面。这样智能合约中的堆分配(通常在futures及其组合器中出现)可以无缝地持久化并在需要时调用,以保留其状态。

程序代码以不可变的Wasm块形式存储,并具有一定数量的内存空间,在消息处理之间进行持久化(称为静态区域)。每个程序都拥有独立的内存空间,并且在初始化阶段为其保留,而不需要额外费用。程序只能在自己的内存空间进行读写,无法访问其他程序的内存空间。

程序可以以64KB块为单位分配所需的内存。每个内存块分配都需要消耗燃气。这些内存块的每个页面(64KB)都单独存储在分布式数据库后端上。但是,在运行时,Gear节点会构建连续的运行时内存,并允许程序在其上运行而无需重新加载。

持久内存技术还支持内存并行性。每个程序具有独立、隔离的内存空间,这使得可以在Gear节点上并行处理多个消息流。并行处理的流数量与CPU核心数相等。每个流程负责处理一组特定程序的消息,这些消息可以来自其他程序或外部(用户交易)。

通过持久内存技术,Gear Protocol能够实现高效的消息处理并行化,从而提升系统性能。这种技术确保了程序状态的持久性,并为开发人员提供了更灵活和强大的编程能力。

核心技术五:Gear 网络状态

Gear网络通过一系列状态组件来维护分布式状态。与其他区块链系统类似,编译为WebAssembly的运行时代码成为存储在区块链上的状态的一部分。

Gear采用了一个重要的特性——无分叉的运行时升级。通过使用最终性工具,可以确保状态的确定性。

存储状态由以下组件组成:

1、程序和内存

包括程序的代码和私有内存。程序代码以不可变的Wasm块形式存储。每个程序都有一定数量的内存,在消息处理之间持久化(即静态区域)。程序可以从Gear实例提供的内存池中分配更多内存,并且只能在专门分配给它的内存中进行读写。

2、消息队列

全局消息队列用于接收用户发送给特定程序的消息交易。这些消息填充了消息队列,在块构建期间被出队并路由到相应的程序。

3、账户

网络账户及其余额存储在账户组件中。Gear提供了一个余额模块,用于管理用户和程序的余额,并支付事务费用。对于公共网络来说,抵御DOS攻击通常需要支付燃气/费用。在许可的情况下,可能不需要余额模块。

Gear网络可以是许可的或无许可的公共区块链。在许可情况下,余额模块可能不需要,但对于公共网络来说,它是必要的。

总之,Gear网络状态技术通过程序、内存、消息队列和账户等组件,实现了高效的分布式状态管理,并为开发者提供了强大的工具来构建各种应用场景的区块链解决方案。

核心技术六:状态转换

每个系统都按照一定规则进行状态转换,当网络处理新的输入数据时,根据状态转换规则进行状态更新。这些输入数据被打包成称为交易的细粒度信息。

在Gear网络中,节点维护和同步一个事务池,其中包含所有新的交易。当任何节点(验证节点或非验证节点)接收到交易时,该节点将其传播到所有连接的节点上。

当Gear验证节点准备生成新的块时,它从事务池中选择一些或全部交易,并将其合并到一个块中,通过该块进行状态转换。未包含在前一个块中的交易将保留在池中,直到下一个块生成。

Gear网络支持以下类型的交易:

1、上传程序:用户可以上传新的程序(智能合约),并与之关联初始余额。

2、上传代码:可以上传未初始化的Wasm代码,用于后续创建程序。

3、创建程序:用户和程序可以使用上传的代码创建新程序。

4、发送消息:最终用户通过向Gear网络发送消息与程序进行交互。发送的消息填充全局消息队列,作为运行时驱动的事务队列,确保所有消息最终都会被处理。

5、发送回复:类似于消息,回复只能作为对接收到的消息的响应发送。用户可以将回复发送给其邮箱中包含的消息。

6、从邮箱中领取价值:当接收到与某个价值相关联的消息后,用户必须领取该价值,并将其从消息转移给用户。未领取的价值将在燃气限制耗尽后返回给发件人。

7、出队消息:验证者在轮到他们生成下一个块时选择出队哪些消息。这样做消除了每个验证者需要维护完整内存状态的需要。出队过程仅在每个块的末尾发生。

8、余额转移:常规的余额转移可以通过两种方式进行,一种是使用Substrate Balances模块提供的extrinsics(例如transfer、setBalance等),另一种是通过消息向其他用户发送带有相关值的转移请求。

Gear网络中的消息处理、块构建和事件的生命周期如下图所示。根据通信的Actor模型,没有共享,只有消息。最终以事件日志的形式结束,供用户空间检查。

结语

Gear Protocol和Vara Network为开发者提供了强大的工具和环境,使他们能够在Web3行业中构建创新的去中心化应用程序。通过支持多种编程语言和智能合约的灵活性,这些平台为开发者带来了极大的便利和自由度。

Gear Protocol独特的特点,如异步消息支持和Gas Reservation机制,为智能合约带来了更高的功能性和自动化能力。这使得开发者可以实现以往无法实现的持久性消息自动化和去中心化逻辑,进一步拓展了区块链应用的边界。

随着Web3技术的不断演进和采用的加速,我们可以期待Gear Protocol和Vara Network继续推动该领域的发展。这些平台为下一代去中心化应用程序的创造和创新提供了强有力的基础,促进了Web3生态系统的繁荣。作为重要的技术支持,在未来的发展中,这些平台可能会引领着Web3技术的前沿,并为用户创造出更多价值和丰富的用户体验。

评论

所有评论

推荐阅读

  • Web3游戏开发商Seeds Labs完成1200万美元种子轮融资,Solana Foundation等参投

    Web3游戏开发商Seeds Labs宣布完成1200万美元种子轮融资, Avalanche 旗下Blizzard Fund、Solana 基金会、Krust、Hashkey Capital、UOB Ventures、Signum Capital、IVC 和 Emoote等参投。Seeds Labs成立于2021年,是一家基于Solana区块链的游戏基础设施开发商,旨在缓解近年来玩家和开发者之间日益紧张的关系,其旗舰产品全球多平台互联近战大逃杀Web3游戏Bladerite计划于本月发布。

  • 香港比特币ETF昨日总申购量101.6枚,以太坊ETF连续两日呈现净赎回

    根据 SoSo Value 数据,香港比特币现货 ETF 昨日(5 月 8 日)单日净申购比特币 101.6 枚,比特币持有总量为 4350 枚,单日成交额为 267 万美元,总净资产为 2.7 亿美元,单日 BTC 申购量来自博时 HashKey 以及华夏比特币 ETF。在日内折溢率方面,华夏比特币 ETF、博时 HashKey 比特币 ETF 以及嘉实比特币 ETF 分别呈现-0.55%、-0.03%以及 0.01%的日内折价率。华夏 ETF 持有 2020 枚 BTC 排名第一,博时 Hashkey 以及嘉实 ETF 分别持有 1220 枚以及 1110 枚 BTC。另外,香港以太坊现货 ETF 昨日(5 月 8 日)单日净赎回以太坊 644.78 枚,以太坊持有总量为 16100 枚,单日总成交额为 173 万美元,总净资产约为 4835 万美元。值得注意的是,香港以太坊现货 ETF 连续两日呈现净赎回。目前博时 Hashkey ETF 持有 6500 枚 ETH 排名第一,华夏以及嘉实 ETF 分别持有 5700 枚以及 3900 枚 ETH。注:香港加密 ETF 支持现货申赎机制,净申购是指一定时间段内申购金额和赎回金额之差为正,即买入比卖出多,反之则为净赎回。

  • 特朗普宣布接受加密货币形式的总统竞选捐款

    唐纳德·特朗普(Donald Trump)宣布其正在接受加密货币形式的美国总统竞选捐款。特朗普表示:“拜登甚至不知道加密货币是什么,如果你喜欢加密货币,你最好投票给特朗普。”特朗普还承诺,他将停止美国对加密货币的敌意并拥抱它。(Watcher.Guru)

  • 过去24小时全网爆仓1.42 亿美元,其中多单爆仓9933.14万美元

    据Coinglass数据显示,过去24小时加密货币市场全网合约爆仓总金额为1.42 亿美元,共有 64,153 人被爆仓。

  • 5月09日早间要闻速递

    1.特朗普:将停止美国对加密货币的敌意并拥抱它

  • Uniswap创始人:创始人与VC需停止将初创、未发币加密项目估值定在10亿美元以上

    Uniswap创始人Hayden Adams在社交媒体发文表示,加密货币创始人和风险投资者需要停止在开发初期、尚未发布代币的项目上将估值定在10亿美元以上,直到它们真正值得这个估值为止。构建出价值7-9位数美元的事物是一项不可思议的成就,不是每个项目在刚启动时都需要成为独角兽。此外,Hayden Adams表示,也许有点天真,但我认为作为创始人以公平估值进行融资(真正的人才想要上升空间),以及作为风险投资者以公平估值进行投资(有限合伙人想要上升空间)可以赚取更多的钱。只是这样做更难一些。

  • 特朗普:将停止美国对加密货币的敌意并拥抱它

    据Watcher.guru在X平台上称,前总统唐纳德·特朗普表示,他将停止美国对加密货币的敌意并拥抱它。

  • Andromeda推出Web3操作系统,为无缝多链未来铺平道路

    aOS允许用户、创建者和开发人员快速构建dApp,将开发时间从几个月缩短到几分钟。

  • 偶像与音乐节,新的融合模式能否运用好Web3的明星效应?

    MEET48 打造了一个AI 和 WEB 3.0 结合的娱乐领域粉丝平台,用户可以在其元宇宙中与偶像互动。

  • Mirror母公司获Electric Capital 1000万美元投资以开发新产品,a16z crypto等提供捐款

    Mirror母公司Reflective Technologies Inc.透露,该公司从Electric Capital处筹集了1000万美元,a16z crypto、Union Square Ventures和Variant也提供了额外捐款,用于开发新产品Kiosk。目前Kiosk仍在开发和寻找创始团队中,将使用Farcaster来增强社交社区内基于区块链的交易。