You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
a. 我的ubuntu 18 LTS 环境因为假期重装了,没有安装go环境(snap install golang-go一行命令传送门,搞定go 1.15x)
b. 我的ubuntu没有外网环境,后台编译go chaincode出错,谷歌protobuf包被墙了。
于是:
cd ~/Probe/fabric-samples/asset-transfer-basic/chaincode-go;
export GO111MODULE=on && go env -w GOPROXY=https://goproxy.cn;
go mod vendor
耐心等待包下载完毕后,自己go build检查一下是否chaincode编译没有问题
c. 修改/etc/hosts文件,将以下内容写入,避免tape找不到domain。
127.0.0.1 peer0.org1.example.com
127.0.0.1 peer0.org2.example.com
127.0.0.1 orderer.example.com
d. 重新启动 Probe
cd ~/Probe/fabric-samples/test-network && ./network.sh down
cd ~/Probe && npm start
PROBE小白开箱测试记录
测试背景
关于Probe
Probe项目是TWGC社区性能优化小组推出的一个UI级性能测试工具项目。它的侧重点是通过操作FABRIC的四个性能参数 [
BatchTimeout, MaxMessageCount,AbsoluteMaxBytes,PreferredMaxBytes ] 来测算这些参数不同组合下TPS可能达到的输出值;关于参数的说明下一小点我们会给出。
其中PROBE项目是基于TWGC的TAPE项目以及FABRIC官方的fabric-samples中的test-network项目。它通过用户手工配置以上四个参数,在Probe内部会调用TWGC生态的TAPE项目(性能测试工具)发起性能测,从而得到相应的TPS结果输出。
结果的输出将会是三维立体坐标系曲线图,以及产生一个CSV结果集文件。[ 我需要实测后详细备注 ]
目前Probe项目地址位于 https://github.com/SamYuan1990/Probe.git
配置参数说明
以下三个参数均属于
BatchSize
范畴的配置集合,它们位于configtx.yaml 的Orderer的 ’BatchSize‘ 配置集下;BatchSize配置集主要用来定义切割一个块之前能收集多少交易。关于这两类参数的详情说明,可参考 https://medium.com/@yashukla47/hyperledger-fabric-ideal-values-for-batchtimeout-and-batchsize-407a04b5d1a6
MaxMessageCount: 一个区块里允许包含的最大交易(消息)个数。缺省配置是10
AbsoluteMaxBytes: 批处理中的序列化消息允许的绝对最大字节数。缺省配置是99MB。
参数具体配置和位置如下(configtx.yaml)
测试前的一些疑问
Probe用户配置四个参数后,内部是去哪里改变这四个参数的(是否是sed切改configtx.yaml或者其他)
目前了解下来:通过内建 Probe/sample/prepareConfig.sh 脚本由 sed 正则切改 configtx/configtx.yaml
修改后是否会重启test-network并开启测试
目前了解下来:是会全新构建test-network
是否支持分布式test-network网络模型测试
目前了解下来:项目暂对官方单vm mode做了验证
待单vm验证通过后,可对 2 vm分布式做验证
【注】
这里是一个我以前的2 vm构建简单节点模型&构建脚本:
https://github.com/wanxiang-blockchain/hackathon2020-T2-Fight.git
以上疑问等开启测试后,还会不定期补充。
测试记录
根据教程 README_ZH.MD先完成 Probe 安装步骤。
安装步骤中在执行完boostrap.sh做完后,检查后台镜像下载情况。目前而言官方下载的fabric镜像版本是v2.3.1
a. 做完安装步骤后,执行npm start
b. 进入我的测试web页面
http://192.168.1.135:3000
选择
TestnetworkSample选项
,点Submit提交c. 此时可以看到Probe后台打印信息
d. 检查后端fabric底层链运行状态
假如没有被加载,需重新检查哪步操作出现错误
e. 耐心等待Probe测试完成
目前测下来,至少要等待到以下信息,才可去访问result页面(见下一小点)
f. 查看测试结果
g. 关闭底层链 & 清空链数据
pushd fabric-samples/test-network && ./network.sh down && popd
遇到的问题 & 解决方案
问题现象描述
加载Probe并安测试步骤在localhost:3000执行test-network sample测试, 等待后台tape执行完毕后,检查result页面时发现X,Y轴都无数据,如下图所示。
问题追踪
经过后台观察,发现后台报chaincode安装失败。经排查后原因如下:
a. 我的ubuntu 18 LTS 环境因为假期重装了,没有安装go环境(snap install golang-go一行命令传送门,搞定go 1.15x)
b. 我的ubuntu没有外网环境,后台编译go chaincode出错,谷歌protobuf包被墙了。
于是:
cd ~/Probe/fabric-samples/asset-transfer-basic/chaincode-go;
export GO111MODULE=on && go env -w GOPROXY=https://goproxy.cn;
go mod vendor
耐心等待包下载完毕后,自己go build检查一下是否chaincode编译没有问题
c. 修改/etc/hosts文件,将以下内容写入,避免tape找不到domain。
127.0.0.1 peer0.org1.example.com
127.0.0.1 peer0.org2.example.com
127.0.0.1 orderer.example.com
d. 重新启动 Probe
cd ~/Probe/fabric-samples/test-network && ./network.sh down
cd ~/Probe && npm start
e. 再次测试后,问题解决。
沟通 & Issues
#81
#82
The text was updated successfully, but these errors were encountered: