Performance Benchmarking and Optimizing Hyperledger Fabric Blockchain\n Platform
At a glance
- Citations
- 2
- References
- 0
- Comments
- 0
Abstract
The rise in popularity of permissioned blockchain platforms in recent time is\nsignificant. Hyperledger Fabric is one such permissioned blockchain platform\nand one of the Hyperledger projects hosted by the Linux Foundation. The Fabric\ncomprises various components such as smart-contracts, endorsers, committers,\nvalidators, and orderers. As the performance of blockchain platform is a major\nconcern for enterprise applications, in this work, we perform a comprehensive\nempirical study to characterize the performance of Hyperledger Fabric and\nidentify potential performance bottlenecks to gain a better understanding of\nthe system. We follow a two-phased approach. In the first phase, our goal is to\nunderstand the impact of various configuration parameters such as block size,\nendorsement policy, channels, resource allocation, state database choice on the\ntransaction throughput & latency to provide various guidelines on configuring\nthese parameters. In addition, we also aim to identify performance bottlenecks\nand hotspots. We observed that (1) endorsement policy verification, (2)\nsequential policy validation of transactions in a block, and (3) state\nvalidation and commit (with CouchDB) were the three major bottlenecks. In the\nsecond phase, we focus on optimizing Hyperledger Fabric v1.0 based on our\nobservations. We introduced and studied various simple optimizations such as\naggressive caching for endorsement policy verification in the cryptography\ncomponent (3x improvement in the performance) and parallelizing endorsement\npolicy verification (7x improvement). Further, we enhanced and measured the\neffect of an existing bulk read/write optimization for CouchDB during state\nvalidation & commit phase (2.5x improvement). By combining all three\noptimizations1, we improved the overall throughput by 16x (i.e., from 140 tps\nto 2250 tps).\n
Publication details
- DOI
- 10.48550/arxiv.1805.11390
- OpenAlex
- W4303104570
- Document type
- preprint
- Language
- EN
- Source
- arXiv (Cornell University)
- Last metadata update
Comments
Log in to join the discussion.