Caliper是一个用于区块链性能测试和基准测试的工具,使用Caliper进行基准测试可以提供关于区块链系统性能的重要指标,本文章Caliper 测试工具通过调用 Helloorld 合约来进行区块链系统进行压力测试并设置交易数量txNumber=10,交易速率tps=1。
前提:
配置基本环境,安装nodejs,安装Docker,安装Docker Compose
参考:使用Caliper进行压力测试环境部署(ubuntu)_发呆...的博客-CSDN博客
加入Docker用户组
sudo groupadd docker
//USER为主机名
sudo gpasswd -a ${USER} docker
# 重启Docker服务
sudo service docker restart
# 验证Docker是否已经启动
sudo systemctl status docker
Caliper部署
1.新建一个工作目录以及对NPM项目初始化
mkdir benchmarks && cd benchmarks
npm init
这一步主要是为在工作目录下创建package.json文件以方便后续依赖项的安装
2.安装caliper-cli
npm install --only=prod @hyperledger/caliper-cli@0.2.0
验证
npx caliper --version
绑定
npx caliper bind --caliper-bind-sut fisco-bcos --caliper-bind-sdk latest
–caliper-bind-sut :用于指定需要测试的区块链平台
–caliper-bind-sdk:用于指定适配器版本;
执行HelloWorld合约测试
npx caliper benchmark run --caliper-workspace caliper-benchmarks --caliper-benchconfig benchmarks/samples/fisco-bcos/helloworld/config.yaml --caliper-networkconfig networks/fisco-bcos/4nodes1group/fisco-bcos.json
npx caliper benchmark run: 使用Caliper的benchmark插件执行基准测试。
--caliper-workspace caliper-benchmarks: 指定Caliper项目的工作目录,也就是基准测试配置文件和网络配置文件所在的路径。
--caliper-benchconfig benchmarks/samples/fisco-bcos/helloworld/config.yaml: 指定基准测试配置文件的路径和文件名。该配置文件定义了要运行的基准测试场景、合约、参与者等相关信息。
--caliper-networkconfig networks/fisco-bcos/4nodes1group/fisco-bcos.json: 指定网络配置文件的路径和文件名。该配置文件定义了FISCO-BCOS区块链网络的连接信息,如节点地址、密钥等。
现要求:并设置交易数量txNumber=10,交易速率tps=1
更改helloworld目录下的config.yaml文件
再次执行HelloWorld合约测试(在benchmarks目录下)
改之前
改之后
压力测试核心代码
1.fisco-bcos.json文件下
在config.yaml文件
在get.js文件
在set.js
报错1 绑定时遇到报错Error: Failed to execute "npm" with return code 1.
at ChildProcess.proc.on (/home/song/fisco/benchmarks/node_modules/@hyperledger/caliper-cli/lib/utils/cmdutils.js:56:35)
at emitTwo (events.js:126:13)
at ChildProcess.emit (events.js:214:7)
npm --registry https://registry.npm.taobao.org install express
文章来源:https://www.toymoban.com/news/detail-719260.html
文章来源地址https://www.toymoban.com/news/detail-719260.html
到了这里,关于FISCO BCOS入门(九)使用Caliper进行压力测试的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!