Ontology VBFT共识算法性能测试

2019-01-03  本文已影响0人  Venture_Mark

Ontology VBFT共识算法性能测试报告

测试背景

测试小结

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

image

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

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

一、测试环境

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

image

软件配置如下:

二、Ontology参数

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

三、测试步骤

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

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

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

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

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

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

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

四、Jmeter配置

image

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

image

五、交易发送情况

image

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

六、出块情况

image image

七、性能分析

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

测试过程中,使用不同的发送速率,不同的交易量进行测试,测试结果TPS都达到了5000以上。

最终的测试结果,也就是VBFT的峰值TPS,超过了5500,达到5536左右。

上一篇下一篇

猜你喜欢

热点阅读