http://www.tnmanning.com

Hyperledger Transact 介绍



· 执行器。Transact执行器从调治器获取生意业务并在特定上下文中执行它们。通过将事务发送到特定的执行适配器(譬喻ZMQ或静态历程内适配器)来处理惩罚执行,后者又将事务发送到一个特定的智能合约。

· 串行和并行生意业务调治,为机动性和机能提供选项。串行调治按顺序一次执行一个事务。并行调治在同一时间执行多个事务(大概是无序的),带有特定的约束,以担保生成的状态与串行调治中大概产生的订单执行相匹配。并行调治提供了庞大的机能优势。
· 生意业务回执,个中包括状态变革功效和生意业务执行中的其他信息。
状态。Transact状态实现提供对数据库的get、set和delete操纵。对付梅克尔-雷迪克斯(Merkle-Radix)树状态实现,树布局在LMDB或内存数据库之上实现。
什么是Hyperledger Transact?
Hyperledger Transact通过提供一个共享软件库来处理惩罚智能合约的执行,包罗调治、生意业务分派和状态打点的各个方面,从而使编写漫衍式账本软件变得越发容易。

Transact 特性



现有的智能合约执行办理方案凡是与特定的漫衍式账本实现绑定在一起,这限制了代码的可重用性。通过提供一个与漫衍式账本执行疏散的智能合约的尺度接口,Hyperledger Transact将淘汰漫衍式账本办理方案的开拓事情。
· 答允差异执行机制的生意业务执行适配器。譬喻,Transact最初提供了同时支持历程内和外部生意业务执行的适配器。历程内适配器答允建设可以执行特定范例生意业务的单个(自界说)历程。外部适配器答允在单独的历程中执行。
Hyperledger Sawtooth、Hyperledger Fabric和Hyperledger Grid的维护者已暗示有乐趣在其项目中利用Hyperledger Transact。我们认为,这仅仅是开始。由于利用Transact尺度接口执行智能合约的优势,我们估量跟着项目标成熟,回收的人会越来越多。
深度阐明


谁参加了该项目?
存心省略其他特性,如共鸣、区块、链接和对端。这些特性由Hyperledger框架(譬喻Sawtooth和Fabric)和其他漫衍式账本实现认真。对智能合约执行的聚焦意味着Transact可以用于智能合约的执行,而不会与其他平台级体系布局设计元素产生斗嘴。
更详细地说,Transact提供了一种可扩展的要领来实现新的智能合约语言,称为“智能合约引擎。”每个智能合约引擎都实现了一个处理惩罚智能合约的虚拟机或表明器。这种例子包罗处理惩罚以太坊虚拟机(EVM)智能合约的Seth,以及处理惩罚WebAssembly智能合约的Sabre。Transact还为实现智能合约和智能合约引擎提供了SDK,这使得用各类编程语言编写智能合约业务逻辑变得很容易。

· 智能合约引擎。这些组件提供了运行智能合约的虚拟机实现息争释器。引擎的示例包罗WebAssembly、以太坊虚拟机、Sawtooth生意业务处理惩罚器和Fabric链码。
Transact根基上是一个状态转换的生意业务处理惩罚系统。状态数据凡是存储在一个梅克尔-雷迪克斯树( Merkle-Radix tree)、一个键值数据库或一个SQL数据库中。给定初始状态和生意业务,Transact将执行生意业务以生成一个新状态。这些状态转换被认为是“纯粹”的,因为只有初始状态和生意业务被输入(对比之下,其他系统如以太坊将状态和区块信息组合在一起,以发生新的状态)。其功效就是Transact对付除生意业务执行和状态之外,与框架成果是无关的。是不是很棒?




· Transact处理惩罚包罗下列部门:
Hyperledger Transact包罗以下已有和将有的特性(非完整列表):

· 支持多种气势气魄的智能合约,包罗Sabre(WebAssembly智能合约)和Seth(EVM智能合约)。
要害词: Hyperledger  超等账本  

Hyperledger框架级此外项目和定制的漫衍式账本可以利用Transact的高级事务执行和状态打点来简化项目中的生意业务执行代码,并操作Transact的其他特性。


· 可插入状态后端,初始支持LMDB的梅克尔-雷迪克斯树实现和内存中的梅克尔-雷迪克斯树(主要用于测试)。此后也将支持键值数据库和SQL数据库

· 上下文打点器。在Transact中,状态读取和写入的浸染域为一个特定的“上下文”(沙盒),该上下文包括对状态ID(如梅克尔-雷迪克斯状态根哈希)和一个或多个以前的上下文的引用。上下文打点器实现上下文生命周期,并为从状态读取、写入和删除数据的挪用提供处事。

我们很兴奋公布我们一个新项目, Hyperledger Transact。Transact代表了超等账本向组件化的一连演进,以答允快速认真任地回收新的大发3d技能。Transact提供了一个与平台无关的措施库,用于通过智能合约执行生意业务。它答允我们更迅速地集成各类智能合约技能,譬喻在跨超等账本项目之间用WebAssembly执行智能合约。Transact来自于超等账本多个项目标履历,并为多项目设计,包罗Hyperledger Sawtooth和Hyperledger Fabric。

· 调治器。此组件节制要执行的生意业务的顺序。详细实现包罗一个串行调治器和一个并行调治器。并行生意业务执行是提高网络吞吐量的重要创新。
Hyperledger Transact的灵感来自于Hyperledger Sawtooth,并利用Sawtooth的当前生意业务执行平台的架构元素,包罗调治,生意业务断绝和状态打点的要领。Transact还进一步相识到来自Hyperledger Fabric的需求,以支持差异的数据库后端,以及Sawtooth和Fabric之间的连系履历,以便为执行适配器提供机动的模子(譬喻,从集成Hyperledger Burrow中吸取的教导)。



· 可以由智能合约生成的事件。这些事件被捕捉并存储在生意业务根据中。
Hyperledger Transact的最初代码是由Bitwise IO和Cargill开拓的,这在很洪流平上得益于英特尔之前对Hyperledger Sawtooth的孝敬。设计接头与Fabric,Borrow,和Indy的维护者颠末进一步设计接头后完善了提案。Transact旨在勉励项目之间的接口对齐。Bitwise IO、Cargill、IBM和Intel今朝都参加了Transact项目。



Hyperledger Transact 先容


智能合约是漫衍式账本的根基构件。在漫衍式账本框架中,生意业务代表着提交生意业务的用户的有意的变革。生意业务通过智能合约举办表明,功效是更新了系统的当前状态。

在较高的级别上,Transact体系布局如下所示:
· 用于下列语言的SDK:Rust、Python、Javascript、Go、Java(包罗Android)、Swift(iOS)、C++和.NET。

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