How to optimize multichain read and write transaction/sec performance.

+1 vote
How to optimize multichain read and write transaction/sec performance, is there any parameter present in multichain, which will increase transaction upto 1000/sec. Actually my requirement is 1000 transaction/sec. So please suggest me the best configuration.
asked Nov 25, 2017 by anonymous

1 Answer

+1 vote
The transaction rate will be primarily driven by the strength of the CPU on which nodes are running. Also consider using SSD disks to make disk access faster. You can see some of our own benchmarks on a defined setup here:

https://www.multichain.com/blog/2017/06/multichain-1-beta-2-roadmap/
answered Nov 27, 2017 by MultiChain
Thanks for your reply. Actually, Currently i am able to create asset upto 500/sec on a medium EC2 server with 16 GB RAM. Can you please suggest me is there any parameter present in multichain, which will impact on transaction. My Multichain is running on one server. The following below are parameter details. Specially i want to know what will be best configuration for target-block-time, maximum-block-size and max-std-tx-size parameter.

anyone-can-connect = true
anyone-can-send = true
anyone-can-receive = true
anyone-can-receive-empty = true
anyone-can-create = false
anyone-can-issue = true
anyone-can-mine = false
anyone-can-activate = false
anyone-can-admin = false

setup-first-blocks = 60
mining-diversity = 0.5

target-block-time = 180
maximum-block-size = 1000000
max-std-tx-size = 100000
If you want to push 500 tx/sec on average we would recommend a much shorter target-block-time, because otherwise a block would contain 90000 transactions, and processing this would create significant pauses in the node's operation. Apart from that you should also consult the guide to production blockchain parameters: https://www.multichain.com/developers/blockchain-parameters/#production
Thanks for your quick reply. Actually, My requirement is for 1000 tx/sec. As per your recommendation i tried with shorter target-block-time and i executed script with below parameter to achieve 1000 tx/sec, but not getting more than 500 tx/sec.


setup-first-blocks = 60
mining-diversity = 0.5

target-block-time = 2 or 60 also
maximum-block-size = 1000000000
max-std-tx-size = 100000
OK, so please just try on an Amazon instance with a stronger CPU. We saw 1000 tx/sec on a dedicated server with a 3.4 GHz Core i7.
...