千家信息网

如何进行Ontology VBFT共识算法性能测试报告

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,如何进行Ontology VBFT共识算法性能测试报告,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。测试背景本次对本体的性能测试,代码全
千家信息网最后更新 2025年12月03日如何进行Ontology VBFT共识算法性能测试报告

如何进行Ontology VBFT共识算法性能测试报告,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

测试背景

  • 本次对本体的性能测试,代码全部来自本体GitHub开源代码,此版本没有加入并行处理和分片。所用的硬件环境是普通的云服务节点。

  • 本次测试是在VBFT共识下,7共识节点的单链测试,不包含并行处理、分片 和 FPGA硬件加速 等官方还未开源的优化点。

  • TPS(Transaction per Second)每秒交易处理笔数,反映了系统在同一时间内能处理业务的最大能力,是区块链的核心性能指标之一。Apache JMeter是Apache组织开发的基于Java的压力测试工具, 本文使用JMeter对Ontology 0.8.2 版本做压测,将测试过程及结果记录如下。相关测试工具及使用方法见:https://github.com/qiluge/VBFT_TPS_TEST

测试小结

没有加入分片、并行处理 和 FPGA硬件加速 的前提下,本次共进行了10次测试,取10次结果的平均值,最终结果如下。此测试结果在公链中处于较高水准。

交易数:300万发送速率:6000/s发送时间:500s落账成功率:99.1%块数:40处理时间:562sTPS:5341峰值:5536

注1:TPS = 成功交易数/(完成落账时间 - 开始发送交易时间)

注2:峰值 即是 系统稳定运行 所能达到的最大TPS,算法为 取落账过程中 中间时段的 一到两分钟之内的落账笔数,除以落账时间。

一、测试环境

每个节点为微软云虚拟机,共7个共识节点,硬件配置如下:

  • CPU:单节点 8核 CPU,具体信息如下:

名称:Intel(R) Xeon(R) CPU E5-2673 v3主频:2.40GHz缓存大小:30720 KB核数:8
  • 内存:单节点27G

  • 硬盘:固态硬盘,大小50G,读写速率限制不超过25MB/s

软件配置如下:

  • 系统信息:ubuntu 16.04.4 LTS

  • Go环境:go1.9.3 linux/amd64

二、Ontology参数

Ontology版本为0.8.2,启动命令为:

./ontology --maxtxinblock 120000 --gaslimit 0 --rest --localrpc --disableeventlog --loglevel 2

三、测试步骤

  1. 使用go-sdk构造一批不同的ONT转账交易,确保其hash不一样,每笔交易的转账数额为1;

  2. 启动ontology测试网络,共7个节点;

  3. 查询交易发送的目标账户的余额,并记录;

  4. 使用JMeter将这批交易发送到测试网络上,配置500个线程发送,设置固定吞吐量定时器控制发送速率;记录开始发送交易时间。

  5. 查看节点日志,通过log中numtx观察落账交易数量,出现第一个非空块时记录时间,发送完毕后,连续出现三个以上的空块时,可认为交易已经处理完毕,取最后一个非空块的时间作为落账结束时间;

  6. 查询交易发送的目标账户的余额,并记录;

  7. 计算余额差值,除以测试时间,即可得TPS。

四、Jmeter配置

  • 线程数与发送次数配置:

LoopController.loops=6000,ThreadGroup.num_threads=500;前者代表一个线程发送的交易的次数,后者代表开启的线程数,二者相乘得出的值为发送的交易数,此处为3,000,000

  • 发送速率配置: 使用固定吞吐量定时器配置交易发送速率,此处为每分钟360,000,即每秒发送6,000笔交易,见下图:

五、交易发送情况

可以看出共发送了3,000,000笔交易,耗时00:08:19,即499秒,则交易发送速度为6012笔/s

六、出块情况

七、性能分析

目前用7个节点测试,TPS达到了5300以上。

测试过程中,使用不同的发送速率,不同的交易量进行测试,测试结果TPS都达到了5000以上。最终的测试结果,也就是VBFT的峰值TPS,超过了5500,达到5536左右。

看完上述内容,你们掌握如何进行Ontology VBFT共识算法性能测试报告的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

测试 交易 时间 节点 处理 配置 结果 速率 共识 性能 硬件 线程 算法 不同 余额 峰值 方法 版本 环境 系统 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 大型网站的服务器部署结构 重庆云数网络技术服务有限公司 衡水营销软件开发服务 高速动车组网络技术 欧洲杯视频软件开发 网络安全标准化实施 贵州优趣网络技术有限公司 网络安全备案服务平台警察实地 软件开发项目经理 工资结构 软件开发就业意向怎么写 上海通讯软件开发服务价格优惠 数据库学习需要的电脑性能 网络安全整改通知模版 网络安全法日志180天 成都前端软件开发价格表 软件开发需要的能力 网络安全法明确的安全监管机构 数据库连接耗尽的反省 苏州工匠通网络技术有限公司 免费视频服务器源码 普洱市人网络安全和信息 数据库怎么控制字段不能为空 苹果服务器搭建 想学网络安全专业有哪些方向 网络安全实战应急演练 星际2如何切换服务器 科学技术和大数据库 湖南雨人网络安全金盾 苹果连接到服务器时 徐州淘金网络技术有限公司
0