Developing Blockchain Applications based on Hyperledger Fabric with Alibaba Cloud Container Service Blockchain Solution
Blockchain has drawn more and more attention worldwide in recent years. Developers, enterprises, universities, research institutes, and governmental organizations have all been engaged in blockchain technology research and exploration. In recent years, an increasing number of blockchain-based innovative service scenarios have emerged in various sectors, such as, digital bills, asset custodian, logistics and shipping, food and drug safety and tracing, charity, and digital content copyright.
The popularity of blockchain can be attributed to its underlying technology; blockchain by nature is an anti-tampering, shared, and distributed ledger. Based on the distributed consensus algorithm, smart contract, and encryption algorithm, blockchain allows transactions in the absence of credit. Currently, there are multiple blockchain implementation technologies in the industry. In the open source field, Hyperledger projects under the Linux Foundation are most influential, especially Hyperledger Fabric blockchain framework implementation. Based on a modular architecture, Hyperledger Fabric is designed for enterprise-level blockchain applications and solutions with excellent scalability, high availability, and security.
In regard to support for blockchain applications and solutions, Hyperledger provides a series of documents, examples, tools, and strong community support, helping you set up a blockchain development environment locally.
Challenges of Blockchain Deployment in a Cloud Environment
However, it is not easy to deploy and configure blockchain in an enterprise-level distributed environment or cloud environment. It involves configuration and calling of blockchain tools, design of blockchain network topology, safe distribution of certificates and keys, high availability of components and services, auto scaling of the service processing capability, and data persistence. Therefore, developers must have deep understanding of the blockchain technology, and professional and complete enterprise infrastructure and resource services are required.
In addition, the process of blockchain configuration and deployment involves massive configuration objects, which are complex and associated with each other. Due to high error rates, frequent end-to-end tests are required to ensure correct configuration and deployment of blockchain, which takes hours or even days. In this case, developers are unable to focus on application development and business innovation, terribly affecting quick iteration and deployment of applications and solutions.
Alibaba Cloud Container Service Blockchain Solution
In response to these pain points and demands, the Alibaba Cloud Container Service team released a solution for automatic blockchain configuration and deployment at the 2017 Computing Conference ¨C Hangzhou Summit. The solution has been released on Alibaba Cloud’s domestic site.
The Container Service Blockchain Solution for Alibaba Cloud’s international site is currently in public beta. The Blockchain Solution is a convenient and flexible basic general-purpose solution. It is mainly used to develop and test blockchain applications and solutions, lowering requirements and improving the efficiency of blockchain use for developers. The solution has the following advantages:
- Agility requirements of development and test environments are satisfied, and the deployment time is reduced from days to minutes.
- Configuration data is automatically generated, avoiding manual mistakes.
- Built-in best practices are available, allowing you to configure and deploy blockchain networks in one step without reworking.
The following compares manual blockchain configuration and deployment with blockchain configuration and deployment by using the blockchain solution in regard to time consumption:
The following figure shows the process of using the Blockchain Solution of Alibaba Cloud Container Service:
In the blockchain solution diagram, we extract critical parameters for developers to customize and provide standard default values to help developers. When you click the Deploy Blockchain Network button, at the underlying layer, the blockchain solution automatically sets massive complex parameters, calls tools, generates templates, distributes certificates and files, and deploys blockchain. Developers only need to wait minutes before obtaining a new custom blockchain network. With the blockchain solution, developers can easily create an efficient and flexible closed loop of development and accelerate development iteration despite frequent and variable demands from the market and users.
After the deployment of blockchain networks, developers can access the blockchain networks through the CLI, SDK, or blockchain management and monitoring tools to develop and test blockchain applications and solutions. The blockchain solution allows HyperLedger Fabric-based SDKs and management and monitoring tools (for example, Hyperledger Explorer or third-party implementation) to directly access services on blockchain networks.
In addition, to improve the efficiency of application and tool configuration, we provide sample programs and tools to demonstrate how to download all blockchain network configuration data at one click to quickly and seamlessly connect applications and tools to blockchain networks. On the other hand, these SDKs and blockchain management and monitoring tools can be deployed either remotely or on an Alibaba Cloud Container Service cluster.
As a blockchain solution deployment platform, an Alibaba Cloud Container Service cluster ensures enterprise-level powerful functions and reliability, and supports deployment of tens of thousands of production-level containers on public clouds with rich experience in enterprise-level container service R&D and O&M as well as a lot of best practices in application containerization. In addition, complete Alibaba Cloud basic resources and services provide strong support for building an all-round and full-lifecycle blockchain enterprise application solution so that developers and enterprises can implement one-stop planning, purchase, configuration, development, release, and O&M.
About Alibaba Cloud Container Service Team
“A little step makes a thousand miles, and a little stream makes a great ocean.”
The Blockchain Solution is Alibaba Cloud Container Service team’s first step into the blockchain field. With the blockchain ecosystem, we need to promote implementation of blockchain applications and commercial popularization of blockchain on clouds. We hope that developers can actively provide feedback on requirements for and improvement and suggestions on functions to help improve and upgrade our blockchain solution. We also hope that our partners can forge more comprehensive Blockchain-as-a-Service and more industry-oriented blockchain business solutions based on this basic solution.
In the future, we will continuously improve deployment of public clouds, VPCs, and hybrid clouds, and further cover Alibaba Cloud Chinese and international sites.
To learn more about this solution, visit the Container Service Blockchain Solution documentation page.