简体   繁体   中英

Substrate transaction per second performance

Hey guys I have a performance related question. I am running 2 aws instance (t2.2xlarge) with 30GB storage. I am running a v2.0 node (branched from master a few days ago) on each with the default setup and i am testing how many transactions per second i can process.

Sending 495 (just under the default 500) balance transfer transactions averages around 22 transactions per second. Is this expected?

I tried running the same test locally (Dell XPS with 1T storage and I7 processor) with 2 instances (both with node-template and node) and the highest average TPS i have seen is 35. Is there anything i can do to improve this?

Thanks

Transactions per second = transactions per block * blocks per second.

Blocks per second can be adjusted straightforwardly in the default Substrate node by changing the MILLISECS_PER_BLOCK constant here or in the node template here .

Transactions per block is slightly squishier because the limits are not on number of transactions but on total size of transactions and total weight of transactions. Both of these properties can be adjusted in the system pallet's configuration trait (eg here in the node template ). You can read more about these parameters in the conceptual doc on Transaction Weights .

Once you have those parameters adjusted so that your throughput is no longer artificially throttled, then you can begin experimenting to see what's attainable in your target network conditions. As to what results you can expect, I'm not really sure, but I look forward to hearing about the experiment.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM