波卡入门系列丨波卡国度建造师Substrate和建筑群Runtime

波卡除了波卡网络还有一个很重要的东西叫
Substrate
,波卡这条具有全信息跨链功能和无分岔升级的区块链网络就是基于Substrate技术构建的。

Substrate通过把功能程序模块化,使快速开发区块链得以实现

Runtime是通过Substrate组合创建的,
根据自己链的需求选择需要的功能程序模块
,形成负责自己链状态转换功能的Runtime。由于Substrate和Runtime都是基于Wasm运行,所以也做到了
无分叉升级


一、Substrate是什么?


1、
首先理解下Substrate为行业带来了什么?
工业革命之所以大大提高了生产力和生产总值,不仅是因为工具带来的效率,还有一个很重要的原因是
工业革命带来了“标准化”
:流水线各司其职的工作内容,产品统一的样式尺寸,甚至英国早期的针对不同人群的教育模式,都是标准化的。

现在我们的生活依然是在标准化的基础上寻找灵活,就好比同一款车型的驾驶座位规格尺寸都一样,但是为了适应各类高矮胖瘦手脚长短不一的车主,有了自动调节座位的按钮,可以上下前后变化;或者是车主提前定制,要求在细节上安装更多功能或使用自己喜欢的坐垫花纹。
标准化带来的最直接影响是
大幅提高生产效率,进而创造更高的生产总值,并且使细分领域更加专业的发展
。另外标准化之上的灵活又为人们带来了更好的体验感。
Substrate就做了这么一件事情——
让开发一条区块链标准化的同时也能灵活调整配置功能
。这就是(1)
“一键发链”
:即创建一条区块链由半年到两年,缩短到了最快15分钟,2018年Gavin在柏林通过Substrate只用了15分钟就创建了一条区块链;(2)链开发者可以更多地
专注到自己要做的核心业务
,不用再为搭建基础设施消耗精力。

2、
Substrate是什么,怎样做到这一点的?

简单说Substrate是一个用来创建区块链的资源库,波卡就是由Substrate创建的。
创建一个新链有各个功能层次的需求,Substrate拥有这些层次需求的总和,当要创建一个新链时,就从其相应层次的数据库中抽取所需,形成自己链的特征,但这些特征都是Substrate的子集,所以通过Substrate创建的链和波卡都是有相同共识的,都可以称为波卡的同构平行链。

通过Substrate建立的链除了
有普遍属性的状态转换函数和模块化的组件
,比如共识、网络、和结构,同时也
具有一些相同的标准和规范
,这样维护升级起来更方便。

通俗的理解Substrate


波卡国度为了使人民的生活丰富多元,需要建立系列满足生命活动的基础规则和基础设施,以更好地为民服务。
比如:法律法规、医院、学校、游乐场、商场、写字楼、住宅、公园、道路等。同时波卡国度也为充分尊重人民的自由利益,创建体现民主的文化:比如言论自由、每个人都有国家利益发言权等。

如果从0开始一砖一瓦一字一页的规划、设计、建设、装修这些生命活动基础设施和文化体系,会消耗大量的时间和精力,就无法集中精力去发展国度经济,无法帮助人民创造更好的商贸环境使人民生活快速本质地改善,自然也无法壮大国度经济实力,让自己在国际上站稳脚跟。

但是现在上帝说:“你们不需要这么辛苦,不需要从0开始,你专注于你想干的,我来帮助你建设这些基础设施等等。”
于是上帝打开了
百宝箱Substrate
,里面有各种医院模型、学校模型、民主文化模型,波卡自己挑着去组合,快速建立起国度物理架构,如果需要翻新更换也从百宝箱里拿就好了。

我们目前正在和上帝合作,通过挑选百宝箱里的各种模块建立好了一个物理体系,可以满足人民生命活动的基础规则、基础设施以及文化框架等等,而这个物理体系就叫做
Runtime



二、Runtime

Runtime的主要任务是
定义
链状态转换逻辑,定义用户可以操作的存储的项目和功能


Runtime是由Substrate构建的,相当于Substrate的一个子集,通过用户自己意愿组合和配置好了的模块就是用户自己的Runtime,每一个模块包含特定领域的逻辑和存储项目。

整个一套Substrate模块和支持库被称为
FRAME


波卡入门系列丨波卡国度建造师Substrate和建筑群Runtime


比如,如果你想在你的区块链上加入智能合约功能,只需要拖动“Contracts”模块加入到你的Runtime中。(PS.这个模块的添加让用户部署通过Wasm执行的智能合约。由于Substrate可以执行软件中本机编译的和Wasm图像下的Runtime,所以
任何写入FRAME的模块都可以无分叉升级。



三、Substrate和Runtime是什么关系?

Runtime是通过Substrate资源库构建的,相当于Substrate的一个子集。

Substrate是一个庞大丰富的用来开发区块链的资源库,
Runtime是Substrate这个资源库里的部分模块合集
,但Runtime放到一条单独的链上,就负责了这个链的各项有关状态转换功能的事务,以及随着时间的推移可以无需硬分岔的升级。

通俗来讲,
Substrate实现了模块化的快速开发一条区块链
。把Substrate理解为上帝的百宝箱,上帝用它的智慧和它百宝箱里的各种资源创建了波卡国度,同时上帝还可以通过百宝箱创建很多其他的国度。

在修建波卡的时候,也搭建了内部的物理体系Runtime,这个物理体系包括
满足人民生命活动所需的各项基础规则、基础设施、文化理念等,以规范和满足里面人民活动的各项所需。

补充

1、部分写入Runtime的模块是被提前强制要求的,因为要保证你通过Substrate定义的Runtime能够和其他归属于Substrate层的Runtime交流。并且必须符合一个特定的接口以使得在Substrate的框架内运行,包括Hash, DigestItem, Digest, Extrinsic, Header, Block, BlockNumber。

2、FRAME:Framework for Runtime Aggregation of Modularized Entities

是Substrates上可用于Runtime的模块合集,这些单个的模块负责各自特殊领域的逻辑,这些一起定义了一个Runtime系列特点和功能。

即各司其职,比如Contract负责智能合约,Grandapa负责链生产共识等等,他们一起决定了这条链的性能。就像国家医院负责看病,学校负责教育,商业负责创造和生成社会流通价值,中央负责人文建设等等,这些一起决定了一个国家的文化、经济、人民生活水平。

作者:BluemountainLabs,来源:Bluemountain Labs

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

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

留言与评论(共有 0 条评论)
   
验证码:
微信号已复制,请打开微信添加咨询详情!