Documentation ¶
Overview ¶
包模拟定义了不同实现使用的类型 模拟仓库。
模拟存储的实现位于目录中 在此包下:
-db-leveldb后端 -mem-内存映射后端 -rpc-可以连接到其他后端的rpc客户端
模拟存储可以实现导入和导出接口 用于导入和导出它们包含的所有块数据。 导出的文件是一个tar存档,其中所有文件的名称为 块键和内容的十六进制表示法 具有json编码的exportedchunk结构。导出格式 应该在所有模拟存储实现中保留。
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNotFound = errors.New("not found")
errnotfound表示找不到块。
Functions ¶
This section is empty.
Types ¶
type ExportedChunk ¶
exportedchunk是保存在tar存档中的结构,用于 每个块都是JSON编码的字节。
type GlobalStorer ¶
type GlobalStorer interface { Get(addr common.Address, key []byte) (data []byte, err error) Put(addr common.Address, key []byte, data []byte) error Delete(addr common.Address, key []byte) error HasKey(addr common.Address, key []byte) bool //newnodestore创建nodestore的实例 //用于单个群节点 //地址地址 NewNodeStore(addr common.Address) *NodeStore }
GlobalStrer定义模拟数据库存储的方法 存储所有群节点的块数据。 在测试中用来构造模拟节点库 并跟踪和验证块。
type NodeStore ¶
type NodeStore struct {
// contains filtered or unexported fields
}
nodestore保存节点地址和对globalStore的引用 为了只访问和存储一个节点的块数据。
func NewNodeStore ¶
func NewNodeStore(addr common.Address, store GlobalStorer) *NodeStore
new nodestore创建nodestore的新实例 使用提供地址的GlobalStrer对数据进行分组。
Directories ¶
Path | Synopsis |
---|---|
包DB实现了一个模拟存储,它将所有块数据保存在LevelDB数据库中。
|
包DB实现了一个模拟存储,它将所有块数据保存在LevelDB数据库中。 |
package mem实现了一个模拟存储,将所有块数据保存在内存中。
|
package mem实现了一个模拟存储,将所有块数据保存在内存中。 |
package rpc实现一个连接到集中模拟存储的rpc客户机。
|
package rpc实现一个连接到集中模拟存储的rpc客户机。 |
包测试提供用于测试的函数 GlobalStrer实施。
|
包测试提供用于测试的函数 GlobalStrer实施。 |
Click to show internal directories.
Click to hide internal directories.