组件
组件
核心组件
以下的 blockchain
,txdb
,txpool
均为interface, 内置默认的实现, 如果开发者有特殊需求,可自行重新实现interface
- blockchain: 链结构,负责存储区块数据 并 组织链结构与分叉逻辑。
- txdb:
yu
的数据库,存储所有区块中的具体交易数据、 交易执行后的event
和error
。 - txpool: 交易池,负责验证和缓存从外部发来的交易。
- state: 存储状态, 储存着每个交易执行后的状态,比如账户余额等。
- tripod: 运行区块链 和 供开发者定制逻辑 的 基本最小单元, 开发者可以定制多个tripod并将他们排序组合装载入
land
里供框架调用。
底层组件
- store: 存储层,支持 kv、sql、 fs 等多种形式的存储,且均为interface,开发者可以指定需要的存储引擎(比如kv目前具备
badger
和boltdb
两种存储引擎) 目前state
内的存储是用boltdb
实现的, 而blockchain
和txdb
内的存储使用sqlite
实现的 - p2p: 点对点传输网络,用来发现网络中的节点以及传播交易和区块等。
- keypair: 公私钥的非对称加密算法,目前支持
sr25519
和ed25519
。该组件以interface形式,可自行扩展其他加密算法。