substrate 区块链框架 概述

Posted thefist11

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了substrate 区块链框架 概述相关的知识,希望对你有一定的参考价值。

1. 定义

Substrate是一个具备区块链核心要素(例如数据存储,p2p通讯,共识算法,密码学组件等)、可用于构建开源、模块化和可扩展区块链的基础技术框架。

Substrate把一个区块链运行所需要的各个模块拆解开,具备可扩展性、模块化、开源、自主可控的特性。开发者可以方便地通过编写runtime(好比一种更高级的智能合约)来修改如加密、共识等模块构建自己的区块链。

  • 核心模块:数据库、加密算法、交易队列、命令行界面、公/私钥生成、RPC等
  • 基本逻辑:数据结构、结算、时间戳、分片等
  • p2p网络:网络节点管理、私讯协议集成、分布式哈希表
  • 共识机制:抵押、Babe、Grandpa、区块落实追踪
  • 治理、升级模型:链上逻辑升级、链上治理
  • dapp:智能合约(联盟链定制化)

2.设计架构
在这里插入图片描述

2.1 Runtime组件

定义如何处理区块,包括状态转换逻辑。

  • runtime代码被编译为Wasm并成为区块链存储状态的一部分
  • 利用Wasm特性实现无分叉链上升级。

2.2 Substrate客户端

Substrate客户端既是针对与客户端本身相同的平台(而不是Wasm)编译的“本地runtime”, 将调用调度到runtime客户端组件的执行程序,它在本机代码和解释Wasm之间进行选择。尽管本地runtime可能会提供性能优势,但是如果执行程序实现了较新的WASM版本,则执行程序将选择解释Wasm来执行。

2.3 存储组件

用于维持以区块链为代表的分布式系统的交易状态。区块链网络使参与者利用共识机制在不可信环境下达成状态存储。Substrate采用一种简单且高效的键值存储机制。

2.4 P2P点对点网络组件

允许客户端与其他网络参与者进行通信。

  • 使用libp2p网络协议栈。
  • 支持模块化、自定义共识引擎。

2.5 RPC(远程过程调用)组件

允许区块链用户与链上网络交互,提供HTTP和WebSocket RPC接口服务。

2.7 遥测组件

通过嵌入Prometheus 服务,能够将区块链网络指标对外暴露

以上是关于substrate 区块链框架 概述的主要内容,如果未能解决你的问题,请参考以下文章

创建第一个 Substrate 区块链

波卡链Substrate 系统框架

Substrate knowledgebase: Benchmarking

无标题

恢复 Substrate 链: unexpected epoch changes

ChainBridge跨链协议教程EVM/Substrate