主页 > imtoken苹果钱包 > 链桨PaddleDTX系列——xdb源码分析(一)
链桨PaddleDTX系列——xdb源码分析(一)
本文基于链桨开源master分支分析xdb模块代码。 最新的提交是 4e59e197e7ca92e5560ebc0f945023eb500d238c
xdb是一个基于区块链的去中心化存储系统以太坊源码分析,实现文件存储、文件摘要上传、副本维护证书、健康状态监控、文件迁移等功能。 xdb代码结构如下图所示:
区块链模块
区块链模块实现了xdb与区块链网络的交互。 xdb暂时支持Xuperchain(xchain)和Fabric,以xchain为例:
xchain.go 实现xchain客户端初始化相关函数
类型 XChain 结构 {
合同名称字符串
ContractAccount 字符串
链名字符串
帐户 *帐户.帐户
XchainClient *xchain.XuperClient
}
// 新建一个 XChain 客户端,用于连接和请求区块链
func New(conf *config.XchainConf) (*XChain, error) {
如果 len(conf.Mnemonic) == 0 {
返回 nil以太坊源码分析,errorx。 New(errorx.ErrCodeConfig, "缺少助记词")
}
...
}
客户端模块
client模块是xdb的客户端工具,可以通过该模块与xdb server进行交互。 具体参见client/http/http.go
命令模块
cmd模块是xdb的命令行工具,通过client request server服务支持以下功能:
具体用法见cmd/client/README.md