压力测试caliper/java-sdk

news2024/11/15 15:30:58

通过Caliper进行压力测试程序

第一步. 配置基本环境

部署 Caliper 的计算机需要有外网权限;
操作系统版本需要满足以下要求: Ubuntu >= 16.04 CentOS >= 7 MacOS >= 10.14
部署 Caliper 的计算机需要安装有以下软件: python 2.7 make g++ gcc git

安装NodeJS  

版本要求:
NodeJS 8 (LTS), 9, 10 (LTS) Caliper 尚未在更高的 NodeJS 版本中进行过验证。
压力测试指南 — FISCO BCOS 2.0 v2.9.0 文档
fisco bcos Caliper部署完整教程(报错解析+自定义测试)_caliper安装-CSDN博客

 

 实战一:搭建本地链用caliper压测

第一步:搭链

 安装依赖

sudo apt install -y openssl curl
创建操作目录 , 下载安装脚本
cd ~ && mkdir -p fisco && cd fisco
curl -#LO https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/FISCO-BCOS/FISCO-BCOS/releases/v2.9.1/build_chain.sh && chmod u+x build_chain.sh
搭建单群组 4 节点联盟链
bash build_chain.sh -l 127.0.0.1:4 -p 30300,20200,8545
启动链
bash nodes/127.0.0.1/start_all.sh

第二步:配置网络配置文件

networks/fisco-bcos/test/ 创建 fisco-bcos2.json 配置网络适配文件:

 

{
  "caliper": {
    "blockchain": "fisco-bcos"
  },
  "fisco-bcos": {
    "config": {
      "privateKey": "bcec428d5205abe0f0cc8a734083908d9eb8563e31f943d760786edf42ad67dd",
      "account": "0x0ff8981ebc130c7874ac7093a4d0c0e3d4f36b08"
    },
    "network": {
      "nodes": [
        {
          "ip": "127.0.0.1",
          "rpcPort": "8545",
          "channelPort": "20200" 
        },
        {
          "ip": "127.0.0.1",
          "rpcPort": "8546",
          "channelPort": "20201"
        },
        {
          "ip": "127.0.0.1",
          "rpcPort": "8547",
          "channelPort": "20202"
        },
        {
          "ip": "127.0.0.1",
          "rpcPort": "8548",
          "channelPort": "20203"
        }
      ],
      "authentication": {
        "key": "/root/fisco/nodes/127.0.0.1/sdk/sdk.key",
        "cert": "/root/fisco/nodes/127.0.0.1/sdk/sdk.crt",
        "ca": "/root/fisco/nodes/127.0.0.1/sdk/ca.crt"
      },
      "groupID": 1,
      "timeout": 100000
    },
    "smartContracts": [
      {
        "id": "helloworld",
        "path": "src/fisco-bcos/helloworld/HelloWorld.sol",
        "language": "solidity",
        "version": "v0"
      }
    ]
  },
  "info": {
    "Version": "2.0.0",
    "Size": "4 Nodes",
    "Distribution": "Single Host"
  }
}
 测试脚本文件介绍

测试配置文件位于./benchmarks/samples/fisco-bcos/helloworld/config.yaml

 

 

第三步,对本地四节点链进行测试

cd /home/myy/Desktop/benchmarks/caliper-benchmarks
npx caliper benchmark run --caliper-workspace /home/myy/Desktop/benchmarks/caliper-benchmarks --caliper-benchconfig /home/myy/Desktop/benchmarks/caliper-benchmarks/benchmarks/samples/fisco-bcos/helloworld/config.yaml --caliper-networkconfig /home/myy/Desktop/benchmarks/caliper-benchmarks/networks/fisco-bcos/test/fisco-bcos2.json
  • --caliper-workspace:指定 Caliper 的工作空间路径,通常是包含 benchmark 配置和网络配置的目录路径。
  • --caliper-benchconfig:指定要运行的基准测试的配置文件的路径。这个配置文件描述了性能测试的参数、交易的工作负载等。
  • --caliper-networkconfig:指定网络配置文件的路径。这个文件描述了要连接的区块链网络的信息,如节点地址、身份验证等。

 

第四步:停止节点  

cd /root/fisco/nodes/127.0.0.1/stop_all.sh

通过Java SDK进行压力测试

第一步:安装JDK

sudo apt install openjdk-11-jdk
java --version

第二步编译源码

./gradlew build

第三步. 配置Demo

cd dist
cp -r ~/fisco/nodes/127.0.0.1/sdk/* conf
由于我的区块链环境具有四个节点,所以应该修改 java-sdk-demo/dist/conf/config.toml下的network.peers 配置
peers=["127.0.0.1:20200", "127.0.0.1:20201","127.0.0.1:20202","127.0.0.1:20203"]

 第四步. 执行示例压力测试程序

注意:你的本地链需要启动

cd dist
java -cp 'conf/:lib/*:apps/*' org.fisco.bcos.sdk.demo.perf.PerformanceOk 10000 1000 1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1620485.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【机器学习】科学库使用第5篇:Matplotlib,学习目标【附代码文档】

机器学习(科学计算库)完整教程(附代码资料)主要内容讲述:机器学习(常用科学计算库的使用)基础定位、目标,机器学习概述定位,目标,学习目标,学习目标,1 人工智能应用场景,2 人工智能小…

Nuxt3项目如何通过开启ssr让网页实现seo自由!

nuxt.config开启ssr # nuxt.config.tsexport default defineNuxtConfig({// 是否开启SSRssr: true }) 终端运行 npm run generate generate 预渲染应用程序的每个路由,并将结果存储为纯HTML文件。 "scripts": {"generate": "nuxt genera…

软件兼容性定义以及作用简单讲解-行云管家

设想一下,假如您购买了一款新软件,但发现它无法在您的操作系统上正常运行,这个时候是不是非常恼火,是不是非常生气。所以企业采购新软件之前,一定要保障与其他操作系统能兼容。今天我们就来聊聊什么是软件兼容性&#…

小程序AI智能名片S2B2C商城系统:五大营销技术模块深度剖析

在当今数字化营销的时代,小程序AI智能名片S2B2C商城系统凭借五大核心营销技术模块,为企业提供了强大的私域流量管理与营销能力。下面我们将逐一剖析这五大模块,看它们如何共同助力企业实现精准营销与业务增长。 一、小程序:用户触…

1、Flink DataStreamAPI 概述(上)

一、DataStream API 1、概述 1)Flink程序剖析 1.Flink程序组成 a)Flink程序基本组成 获取一个执行环境(execution environment);加载/创建初始数据;指定数据相关的转换;指定计算结果的存储…

Nintex访问上海斯歌总部,双方达成重要战略共识

近日,Nintex公司(K2产品总部)亚太区域销售副总裁Keith Payne、资深解决方案工程师Ranjit Nair以及区域销售经理Rachel一行莅临上海斯歌总部进行访问。在此次会晤中,上海斯歌与Nintex就未来在中国大陆及中国香港市场的战略发展达成…

SOLIDWORKS 2024 MBD新增功能

MBD即基于模型的工程定义、是一个用集成的三维实体模型来完整表达产品定义信息的方法体,它详细规定了三维实体模型中产品尺寸、公差的标注规则和工艺信息的表达方法。 01 通过实体几何体控制注解的可见性 SOLIDWORKS 2024 MBD 在用户使用体验上做了很大的提升。S…

QT初识

通过图形化界面输出helloworld 既然学习了QT,那么自然要做经典的输出helloworld字符串的实验。 QT有两好几种方案输出helloworld,一种是通过图形化界面输出,一种是通过代码实现。 这里先了解图形化界面的方案。 创建项目后,点…

高频前端面试题汇总之HTML篇

1. src和href的区别 src和href都是用来引用外部的资源,它们的区别如下: src: 表示对资源的引用,它指向的内容会嵌入到当前标签所在的位置。src会将其指向的资源下载并应⽤到⽂档内,如请求js脚本。当浏览器解析到该元素…

函数式接口及Stream流式计算

一、什么是函数式接口 只有一个方法的接口,例如 FunctionalInterface public interface Runnable { public abstract void run(); }二、Function函数式接口:有一个输入参数,有一个输出 三、断定型接口:有一个输入参数&#xf…

如何用虚拟仿真实训室提质增效?

为积极推进教学改革,优化人才培养方案,紧跟产业发展趋势,响应教育领域数字化改革要求,越来越多院校通过搭建虚拟仿真实训室、数字人实训室,打通了融“理论知识虚拟训练技能训练”为一体的教学和实训。学生通过数字人实…

代码随想录 Day19 字符串 | LC28 实现strStr() 【KMP经典题目】

六、实现strStr() 题目: 力扣28:找出字符串中第一个匹配的下标 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack…

大模型检索召回系统:RAG技术的全面调查与未来展望

随着人工智能技术的飞速发展,大型语言模型(LLMs)在自然语言处理(NLP)领域取得了显著成就。然而,这些模型在处理特定领域或知识密集型任务时仍面临挑战,如产生错误信息或“幻觉”。为了克服这些难…

代码随想录算法训练营33期 第五十天 | 188.买卖股票的最佳时机IV

dp[i][0] 不操作;d[i][1]第一次开始持有股票 //dp[i]当前天i的价值情况,dp[i][0]表示不操作的最大价值,dp[i][1]在当前天第一次持有的最大价值,dp[i][2]在当前天第一次卖出的最大价值, dp[i][3]在当前天第二次持有的最大价值&am…

qmt教程2----订阅单股行情,提供源代码

链接 qmt教程2----订阅单股行情,提供源代码 (qq.com) qmt教程1---qmt安装,提供下载链接 今天我重新封装了全部qmt的内容,包括数据,交易 qmt交易 我本来打算全部上次git的,但是考虑到毕竟是实盘的内容,就放…

项目总结计划-(Word)

项目总结计划书-Word 2 项目工作成果 2.1 交付给用户的产品 2.2 交付给研发中心的产品 2.2.1 代码部分 2.2.2 文档部分 2.3 需求完成情况与功能及性能符合性统计 2.3.1 需求完成情况统计 2.3.2 功能符合性分析 2.3.3 性能符合性分析 3 项目工作分析 3.1 项目计划与进度实施分…

消息队列一文全解!!!

消息队列的用途是什么? 第一章 消息队列的用途是什么? 第二章 消息重复消费如何避免? 第三章 消息的顺序性可靠性如何保证? 第四章 高可用的消息队列如何搭建? 第五章 消息队列面试题汇总 文章目录 消息队列的用途是什…

Vue页面生成导出PDF文件

第一种&#xff1a; 使用浏览器自带打印方法window.print(); 也可使用print-js插件&#xff08;原理相同&#xff09; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>printDemo</title> </…

安防监控/智能分析EasyCVR视频汇聚平台海康/大华/宇视摄像头国标语音GB28181语音对讲配置流程

一、背景分析 近年来&#xff0c;国内视频监控应用发展迅猛&#xff0c;系统接入规模不断扩大&#xff0c;涌现了大量平台提供商&#xff0c;平台提供商的接入协议各不相同&#xff0c;终端制造商需要给每款终端维护提供各种不同平台的软件版本&#xff0c;造成了极大的资源浪…