fabric 0.6 搭建PBFT 性能测试

Fbric_0.6_4-peers tps 表现

本人也做fabric 项目搭建、开发、浏览器、sdk、共识算法的测试、改进等工作、有问题或需要,可以加q 260261476,欢迎指导!

req_numtime_costsuccessfailtps
50125ms500400
100200ms1000500
200420ms500476
500800ms5000625
10001420ms10000714
500010.4s50000480
1000025.9s10000386
4-7-10 no-faulty

4-7-10
1000 1.84 1.43 1.48
1000 2.58 2.31 2.52
1000 3.81 3.64 3.72

4-7-10
5000 11.63 10.30 11.78
5000 11.52 11.31 11.36
5000 17.30 16.76 16.98

### 使用Hyperledger Fabric搭建带有PBFT共识机制的私有区块链教程 #### 一、环境准备 为了设置一个基于PBFT (Practical Byzantine Fault Tolerance) 共识算法的Hyperledger Fabric网络,首先需要安装并配置好必要的开发工具和依赖项。这包括但不限于Docker、Docker Compose以及Go语言环境等基础组件。 对于Hyperledger Fabric本身而言,则需下载对应版本的二进制文件与镜像资源[^3]。 ```bash export VERSION=2.4.8 curl -sSL https://bit.ly/2ysbOFE | bash -s $VERSION docker pull hyperledger/fabric-peer:$VERSION docker pull hyperledger/fabric-orderer:$VERSION ... ``` #### 二、创建通道及加入节点 定义网络拓扑结构之后,在启动任何服务之前应该先建立联盟链中的各个组织之间的通信渠道——即“通道”。通过`configtxgen`命令行工具来生成创世区块,并让不同成员机构下的peer节点参与到特定频道之中去。 值得注意的是,默认情况下Ordering Service采用Kafka作为消息队列实现最终一致性;然而要启用PBFT的话则必须调整此部分配置以适应拜占庭容错需求。 #### 三、修改配置文件支持PBFT 编辑`orderer.yaml`文件内的Consensus Type字段为etcdraft(尽管官方文档中并没有直接提到pbft选项),因为当前Fabric社区推荐使用Raft替代原有的Solo/Kafka模式来进行强一致性的排序服务部署。不过在某些特殊场景下也可以尝试自定义插件方式集成第三方提供的PBFT解决方案。 另外还需注意调整其他参数比如BatchTimeout/BatchSize等影响性能表现的关键属性值。 #### 四、编写智能合约逻辑 利用Chaincode SDK或者CLI接口完成业务功能编码工作,将其打包成tarball格式上传至指定路径供后续调用执行操作之用。这里建议开发者们遵循最佳实践指南确保代码质量可靠稳定。 ```go // Example.go package main import ( "fmt" "github.com/hyperledger/fabric-chaincode-go/shim" ) type SimpleChaincode struct{} func (t *SimpleChaincode) Init(stub shim.ChaincodeStubInterface) peer.Response { fmt.Println("Init ChainCode") return shim.Success(nil) } func (t *SimpleChaincode) Invoke(stub shim.ChaincodeStubInterface) peer.Response { function, args := stub.GetFunctionAndParameters() if function == "invoke" { // Perform the invoke operation } else if function == "query" { // Perform query operations here. } return shim.Error("Invalid invoke function name.") } ```
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值