Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

How to carry out the performance Test report of Ontology VBFT consensus algorithm

2025-01-18 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Internet Technology >

Share

Shulou(Shulou.com)06/01 Report--

How to carry out the Ontology VBFT consensus algorithm performance test report, I believe that many inexperienced people do not know what to do, so this paper summarizes the causes of the problem and solutions, through this article I hope you can solve this problem.

Test background

In this performance test of ontology, all the codes come from the open source code of ontology GitHub, and parallel processing and fragmentation are not added in this version. The hardware environment used is a normal cloud service node.

This test is a single-chain test of 7 consensus nodes under the VBFT consensus, and does not include optimization points such as parallel processing, sharding and FPGA hardware acceleration, which are not officially open source.

The number of transaction transactions per second of TPS (Transaction per Second) reflects the maximum capacity of the system to handle business at the same time, and is one of the core performance indicators of the block chain. Apache JMeter is a stress testing tool based on Java developed by Apache organization. In this paper, JMeter is used to do stress testing on Ontology version 0.8.2, and the test process and results are recorded as follows. For related testing tools and usage, please see: https://github.com/qiluge/VBFT_TPS_TEST

Test summary

Without adding sharding, parallel processing and FPGA hardware acceleration, a total of 10 tests were carried out, and the average results of 10 times were taken. The final results are as follows. The test results are at a high level in the public chain.

Number of transactions: 3 million send rate: 6000 max s send time: 500s settlement success rate: 99.1% number of blocks: 40 processing time: 562sTPS:5341 peak: 5536

Note 1:TPS = number of successful transactions / (completion closing time-start sending transaction time)

Note 2: the peak is the maximum TPS that can be achieved by the stable operation of the system. The algorithm takes the number of accounts within one to two minutes in the middle period of the settlement process, divided by the settlement time.

I. Test environment

Each node is a Microsoft cloud virtual machine, with a total of 7 consensus nodes. The hardware configuration is as follows:

CPU: single node 8-core CPU. Details are as follows:

Name: Intel (R) Xeon (R) CPU E5-2673 v3 main frequency: 2.40GHz cache size: 30720 KB core: 8

Memory: 27g per node

Hard disk: solid state disk with a size of 50 gigabytes. The read and write rate limit does not exceed 25MB/s.

The software configuration is as follows:

System Information: ubuntu 16.04.4 LTS

Go environment: go1.9.3 linux/amd64

2. Ontology parameters

The Ontology version is 0.8.2, and the startup command is:

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

Use go-sdk to construct a batch of different ONT transfer transactions to ensure that their hash is different, with a transfer amount of 1 for each transaction

Start the ontology test network with a total of 7 nodes

Query the balance of the target account sent by the transaction and record

Use JMeter to send the transactions to the test network, configure 500 threads to send, set a fixed throughput timer to control the sending rate, and record the time to start sending transactions.

View the node log, observe the number of unaccounted transactions through numtx in log, and record the time when the first non-empty block appears. After sending, when more than three empty blocks appear in succession, the transaction can be considered to have been processed, and the time of the last non-empty block is taken as the closing time.

Query the balance of the target account sent by the transaction and record

Calculate the balance difference and divide it by the test time to get TPS.

IV. Jmeter configuration

Configuration of number of threads and number of deliveries:

LoopController.loops=6000,ThreadGroup.num_threads=500; represents the number of transactions sent by a thread, and the latter represents the number of threads opened. The multiplication of the two represents the number of transactions sent, in this case 3000000

Send rate configuration: use a fixed throughput timer to configure the transaction sending rate, which here is 360pc2000 per minute, or 6000 transactions per second, as shown in the following figure:

V. transaction delivery

You can see that a total of 3000000 transactions were sent, and it took 00:08:19, or 499 seconds, to send transactions at a speed of 6012 transactions per second.

VI. Block situation

VII. Performance analysis

At present, using 7 nodes to test, the TPS has reached more than 5300.

During the testing process, different transmission rates and different trading volumes are used to test, and the test results show that the TPS is more than 5000. The final test result, the peak TPS of VBFT, exceeded 5500, reaching about 5536.

After reading the above, have you mastered the method of how to conduct the performance test report of Ontology VBFT consensus algorithm? If you want to learn more skills or want to know more about it, you are welcome to follow the industry information channel, thank you for reading!

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Internet Technology

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report