As an upgraded version of DxChain 2.0, DxChain 3.0 is compatible with EVM and smart contract architectures, optimizes the DPoS architecture, and implements the new system contract layer. This performance test mainly tests the TPS, system performance parameters, system stability, and DPoS consensus capability of DxChain 3.0 under the new architecture.
Through the high-concurrency test tool developed by the DxChain tech team, the TPS, system transaction processing capability, and RPC response time will be tested and analyzed under a high volume of users and high concurrent transaction volume, and high system load.
TPS represents the system's ability to accept transactions and the processing ability of data, that is, the chain's throughput. The public chains generally have a TPS of about 200 to 500.
The RPC response time represents the node's response time to the user's transaction and query requests and reflects the user experience when the chain and program are running. The smaller the value, the faster the corresponding speed.
The AWS t2.medium is one of the standard server types provided by AWS. During the test, it was found that the performance required by the RPC machine was slightly higher than that of the node machine that produced the block. Therefore a t2.xlarge server was used.
Test Scenarios and Results
Transaction Stress Test
Number of successful transactions: 20000
Success rate: 100%
Transaction sending time: 24.72 s
Average time per transaction: 0.00124 s
Average transactions per second: 808.93
Average TPS: 896
Max TPS: 1098
Memory (RAM): 60%
Compared with the normal situation, 20,000 transactions simultaneously is a relatively high load. In this test, DxChain 3.0 can handle massive transaction requests in a short time with good performance, the transaction success rate is 100%, and the peak TPS can reach 1100.
Continuous Transaction Test
Total Transactions: 75248
Success rate: 100%
Average TPS: 427
Max TPS: 851
Average time per transaction: 0.00416 s
Average transactions per second: 240
Memory (RAM): 40%
In this test, 75,248 transactions were sent within 5 minutes, the success rate was 100%, and the peak TPS was 851, which is almost the same as the average value in the stress test. Moreover, the CPU and memory occupancy rate was lower, indicating that DxChain 3.0 can efficiently deal with similar situations.
50,000 "check balance" Query Test
Number of successful queries: 50000
Query time: 4.57s
Success rate: 100%
Average time per query: 0.00009 s
Average queries per second: 10948
Memory (RAM): 20%
The test simulates a scenario where 50,000 addresses interact with the chain online simultaneously. The short-time response shows that DxChain could provide users with excellent user experiences.
Through the above tests, the highest TPS and average TPS in the stress test are both greater than the results in the non-stress test, which means that the system has the undoubted ability to deal with the sudden high trading volume ensures high stability of the system. The TPS in the non-stress test was also maintained at a relatively high level, indicating that the system is sufficient to deal with the transaction volume under normal conditions.
We didn't choose the highest specification servers in the test, but it can still maintain a high level of performance for the chain. The overall corresponding speed and performance are relatively ideal and meet the expectations of the DxChain team. The output implies that DxChain 3.0 can sufficiently support the economic activities and ecosystem on DxChain. In the future, the team will continue to optimize DxChain and bring better experiences and services to users!