Quorum Blockchain Service development overview¶
With Quorum Blockchain Service (QBS), you can create consortium blockchain networks to enable enterprise scenarios like asset tracking, digital token, loyalty and reward, supply chain financial, and provenance. The following sections introduce Quorum Blockchain Service development for implementing enterprise blockchain solutions.
Connecting to Quorum Blockchain Service¶
You can use different clients as your gateway to QBS for blockchain development. The following are popular clients you can use to connect.
Truffle extension for Visual Studio Code¶
You can compile, build, and deploy smart contracts to QBS using the Truffle extension for Visual Studio Code.
To develop sophisticated enterprise blockchain solutions, a development framework is needed to connect to different blockchain networks and manage smart contract lifecycles. Most projects interact with at least two blockchain nodes. Developers use a local blockchain during development. When the application is ready for test or release, the developer deploys to a blockchain network. For example, the main public Ethereum network or QBS.
The Truffle extension for Visual Studio Code uses Truffle Suite, which is a popular blockchain development framework to write, compile, deploy, and test decentralized applications on Ethereum. You can also think of Truffle as a framework that attempts to seamlessly integrate smart contract development and traditional web development.
Ethereum GoQuorum private transactions¶
GoQuorum is an Ethereum-based distributed ledger protocol with contract privacy and new consensus mechanisms. Key enhancements over Geth include:
- Privacy - GoQuorum supports private transactions and private contracts through public and private state separation, and uses peer-to-peer encrypted message exchanges for directed transfer of private data to network participants.
- Alternative consensus mechanisms - Proof-of-work or proof-of-stake consensus is not needed for a permissioned network. GoQuorum offers multiple consensus mechanisms that are designed for consortium chains such as Raft and IBFT. QBS uses the IBFT consensus mechanism.
- Peer permissioning - Node and peer permissioning using smart contracts ensures only known parties can join the network.
- Higher Performance - GoQuorum offers higher performance than public Geth.
Block explorers are online blockchain browsers that display individual block content, transaction address data, and history. If you need more detail information during development, block explorers can be useful. You can use a block explorer such as Nethereum lite explorer.
As blockchains are used in more enterprise-oriented scenarios, high transactions per second (TPS) is important to avoid bottlenecks and system inefficiencies. High transaction rates can be difficult to maintain within a decentralized blockchain. An accurate TPS measurement may be affected by different factors such as server thread, transaction queue size, network latency, and security. If you need to measure TPS speed during development, a popular open-source tool is ChainHammer.