Hyperledger Fabric
[Paper Summary] Performance Benchmarking and Optimizing Hyperledger Fabric Blockchain Platform
namho46
2020. 7. 29. 11:27
Performance Benchmarking and Optimizing Hyperledger Fabric Blockchain Platform
author: Parth Tharkkar, Senthil Natahn N, Balaji Viswanathan
Problem Statements
- Performance Benchmarking
- throughput and latency
- derive and present a few high-level guidelines, which would be valuable to developers and deployment engineers
- Optimization
- identify bottlenecks
- introduce and implement optimizations to alleviate theses bottlenecks
Experimental Methology
- Endrosement latency
- Broadcast latency
- Commit latency
- Ordering latency
- VSCC validation latency
- MVCC validation latency
- Ledger update latency
Experimental Results
Guideline
- When the transaction arrival rate is expected to be lower than the satuation point, to achieve a lower transaction latency for applications, always use a lower block size.
- When the transaction arrival rate is expected to be high than the satuation point, to achieve a lower transaction latency for applications, always use a higher block size.
- To achieve a high performance, define policies with a fewer number of sub-policies and signatures.
- To achieve a higher throughput and lower latency, it is better to allocate at least one vCPU per channel.
- To achieve higher throughput and lower latency, it is better to avoid heterogenous peers as the performace would be dictated by less powerful peers.
- GoLevelDB is a better performance option for state database. CouchDB is a better choice if rich-query support for read-only transactions is important. When using CouchDB, design the application and transaction to read/write a fewer number of keys to accomplish a task.