Gear 的技术优势_GEAR:TerraClassicKRW

在上一篇文章中,我们介绍了新推出的Polkadot/Kusama平行链——Gear,它拥有最先进的智能合约引擎,还介绍了Gear的使命、主要功能和团队成员。

现在,让我们深入了解GEAR突破性技术的关键优势。

摘要

Gear关键的技术创新在于其新颖的跨合约通信方式。Gear使用Actor通信模型和WebAssemblyVM,支持并行处理,并具有速度快、成本低的优势。

事实证明,WebAssemblyVM比任何其他方案运行速度都要快。使用WebAssembly可以让GEAR的智能合约直接编译成机器码,运行速度媲美原生。更快的速度意味着更低的交易成本和更高的效率。

背景

我们可以看一看基本原理和组成部件,通过了解背景知识,更好地了解Gear的技术。

同其他区块链系统一样,Gear也维护分布式状态。运行时代码将被编译成WebAssembly并成为区块链存储状态的一部分。

Bitfinex宣布即将上线Sui (SUI):据官方公告,Bitfinex宣布即将上线Sui (SUI),很快将公布其充值和交易时间。[2023/5/2 14:38:26]

存储状态包括以下部分:

程序和内存

消息队列

账户

程序和内存

程序代码存储为不可变的Wasmblob,每个程序都有固定数量的独立内存,这些内存在程序初始化时被预留,并在消息处理期间保持不变。程序只能在自己的内存空间内读写,不能访问其他程序的内存空间。

程序可以从Gear实例提供的内存池中分配到更多内存。程序以64KB为单位分配自身所需的内存。每个分配的内存块分散存储在分布式数据库后端,但在运行时中,Gear节点构造连续的运行时内存,并允许程序在其上运行而无需重载。

消息队列

Gear实例持有一个全局消息队列。使用Gear节点,用户可以向特定程序发送包含一条或多条消息的交易。这些消息将填充消息队列。在区块构造过程中,消息将被移出队列并被路由到特定程序。

数据:超5400万枚USDC从匿名地址转移至Binance:4月28日消息,据 Whale Alert 数据显示,54,427,839 枚 USDC 于今日 12 时 56 分从匿名地址转移至 Binance 平台。[2023/4/28 14:32:32]

账户

对于公共网络,防御DoS攻击常常在交易处理时支付gas/fee。Gear提供了一个Balance模块,允许存储用户和程序余额,并支付交易费用。

常规余额转移是在Substrate的Balances模块中进行的。余额在用户、程序和验证者帐户之间转移。

除了常规余额转移外,Gear网络还定义了gasbalance转移,用于奖励验证者节点的工作,并保护网络免受DoS攻击。

状态转换

每个系统都遵循系统状态演化所依据的规则。当网络处理新的输入数据时,状态将根据状态转移规则前进。这些输入数据被打包在称为交易的原子粒度的信息中。

BTC获利地址数量创16个月高点:金色财经报道,数据显示,BTC获利地址数量在过去一小时 (7d MA) 刚刚达到34,115,649.143个,创16个月高点。[2023/4/16 14:06:19]

Gear节点维护并同步包含所有新交易的交易池。当任何节点接收到交易时,该节点将交易传播到所有连接的节点。

当Gear验证节点生成新块时,池中的一些交易将合并到一个块中,网络将通过该块进行状态转换。上一个区块中未打包的交易将留在池中,直到生成下一个区块。

Gear支持以下交易类型:

创建程序

发送消息

退出消息队列退出多条消息,运行相关程序)

余额转移

Actor通信模型

并发系统的主要挑战之一是并发控制。它定义了不同程序之间正确的通信顺序,并协调共享资源的访问。潜在问题包括竞争条件、死锁和资源匮乏。

Grayscale CEO:“GBTC转换为现货ETF”若获批,或为投资者带来“数十亿美元”回报:金色财经报道,Grayscale Investments首席执行官Michael Sonnenshein在最近的一次播客采访中表示“无法想象”为什么美国证券交易委员会(SEC)“不想”保护Grayscale投资者,并将真正的资产价值返还给他们。

2月25日,在接受Peter McCormack主持的播客节目What Bitcoin Did的采访时,Sonnenshein解释说,美国SEC在2022年6月拒绝批准将GBTC转换为现货比特币ETF的申请,“违反了行政程序法”。他补充道,批准比特币期货ETF,而不批准“GBTC的转换”,美国SEC的行为是“武断的”。

Sonnenshein指出,当美国SEC开始批准第一批比特币ETF时,Grayscale认为这“是一个迹象”,表明美国SEC“实际上正在改变他们对比特币的态度”。他表示,实际上有“数十亿美元”的资金会在一夜之间立即回到投资者的口袋里,因为该基金将“回流”到其资产净值。

Sonnenshein表示,这是因为GBTC目前的交易价格低于其净资产价值(NAV),但如果将其转换为ETF,就“不再”存在折扣或溢价。他重申,Grayscale“现在正在起诉美国SEC”,并可能在“2023年秋季”做出挑战其拒绝批准的决定。[2023/2/26 12:30:17]

并发计算系统可分为两类通信模式:

Raydium:已暂停Serum做市且不与Serum分享流动性:11月14日消息,Solana生态去中心化交易所Raydium在推特上表示,为限制对第三方协议的风险,Raydium已暂停Serum做市且不与Serum分享流动性。在Raydium流动性池中的交易不受影响,且将于11月21日暂停在Serum上下订单的功能。[2022/11/14 13:02:34]

共享内存通信——并发程序通过更改共享内存位置的内容进行通信。

消息传递通信——通过消息交换进行并发程序通信。消息传递并发比共享内存并发更容易理解。它通常被认为是一种更稳健的并发编程形式。

通常,消息传递并发比共享内存具有更好的性能。在消息传递系统中,每个进程的内存开销和任务切换开销更低。

有很多数学理论可以用来理解消息传递系统,包括Actor模型。

对于进程间通信,Gear使用Actor模型。Actor模型越来越流行,通常作为先进的语言概念,现在许多新的编程语言都在使用它。Actor模型的原理是程序从不共享任何状态,只是在彼此之间交换信息。

虽然在一个通常的Actor模型中,消息顺序没有任何保证,但Gear额外保证了两个特定程序之间的消息顺序保持不变。

使用Actor模型可以使我们在程序逻辑中实现基于Actor的并发性。这样我们就可以利用各种语言结构进行异步编程。

与类不同,actor一次只允许一个任务访问其可变状态,这使得多个任务中的代码可以安全地与同一个actor实例交互。

异步函数大大简化并发管理,但它们无法处理死锁或状态损坏的情况。为了避免死锁或状态损坏,异步函数应该避免调用可能阻塞其线程的函数。为了实现这一点,我们选择使用await表达式。

目前,典型的智能合约代码中缺乏对async/await模式的支持,这给智能合约开发人员造成了很多问题。实际上,通过添加手工函数,在智能合约程序流中实现更好的控制是可能的。但是合约中许多函数的问题在于,人们很容易混淆,应该在合约生命周期中的哪个阶段调用哪个函数。

Gear为程序提供通用的async/await语法。这大大简化开发和测试过程,降低智能合约开发中出错的可能性。如果程序逻辑需要,GearAPI还支持同步消息。

内存并行性

每个程序的独立内存空间允许在Gear节点上进行并行化消息处理。并行处理流的数量等于CPU内核数。每个流将处理用于一组已定义程序的消息。它与从其他程序或外部发送的消息有关。

Gear引擎使用运行时定义的流的数量,这个数量等于验证者机器上的CPU内核数,将目标程序的总量除以流数,并为每个流创建一个消息池。

程序被分配到独立的流中,每条消息都出现在其目标程序的流中。因此,发往特定程序的所有消息都会出现在一个处理流中。

在每个周期中,一个目标程序可以有多条消息,一个流将处理许多程序的消息。消息处理后,每个流的一组新消息将被添加到消息队列中,然后循环重复。消息处理过程中,生成的结果消息通常被发送到另一个地址。

WebAssemblyVM

Gear在底层使用WebAssembly。任何Gear程序都采用WebAssembly格式。WebAssembly是用于部署程序的代码格式。在Gear上下文中,任何智能合约都是一个WebAssembly程序。

WebAssembly具有以下优点:

卓越的原生速度。因为它将程序代码转换为实际的硬件指令。更高的速度意味着更高的效率和更低的交易成本。

便携性。它可以在任何硬件上运行。

安全性。经过正确验证的WebAssembly程序不能离开沙箱(由规范保证)。

WebAssembly能够成为一项引人注目的全球性行业技术有以下原因:

由该领域的所有主要竞争者合作设计和实施

设计和发布采用完整的数学和机器形式验证

请及时关注Gear的GitHub,了解最新资讯!

关于GearFans

Gear是波卡生态的计算组件,GearFans是Gear爱好者社区。

来源:金色财经

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

水星链

[0:15ms0-0:981ms