简体   繁体   中英

Difference between hyperledger composer and hyperledger fabric?

I am java developer and new to hyperledger. I am interested in learning it and need to know where to start . fabric vs composer?

Hyperledger Composer simplifies application development on top of the Hyperledger Fabric blockchain infrastructure.

If you are interested in the blockchain infrastructure, start with the Fabric tutorials .

If you are interested in blockchain applications, start with the Composer tutorials .

The Fabric tutorials also include samples of low level chaincode development (in golang). Composer is a higher level application development framework.

I'd suggest trying both to get an overall view of the capabilities.

As a Java developer, you will also want to check out the Fabric Java SDK for building Java client applications that interact with the blockchain. Java chaincode is also available as of Fabric v1.3.

Updated answer (as promised in previous post): Hyperledger Composer v0.19.0 (time of writing - Apr 1st 2018) is the default release for building your blockchain business networks using Composer. So when you pull HL/Composer eg via npm install etc) - this uses the current GA edition of Hyperledger Fabric v1.1, the underlying blockchain network infrastructure. This 0.19.0 release includes a fundamental change in the way that Composer business networks are deployed (vis-a-vis previous releases eg 0.16.x - 0.18.x). Business networks are now deployed within Hyperledger Fabric 'as chaincode' - meaning that the business network (rather than Composer runtime) can be agreed by all parties (to the blockchain network) and signed, using a similar management model to non-Composer chaincode. In a later edition, the plan is to add JS requires so that these can be exploited in NodeJS and include other JS functions you've developed - of course, you can already call native Fabric APIs/chaincode functions already, from Composer transaction processors - introduced prior to 0.19.x release). See more info here in the release notes -> https://github.com/hyperledger/composer/releases/tag/v0.19.0

hyperledger fabric is a hyperledger framework while composer is a hyperledger module.I suggest you start with hyperledger composer since it offers many benefits such as

  • Faster creation of blockchain apps, eliminating the big effort required to build blockchain applications from scratch
  • it is well-tested therefore less risk involved, easier to understand and align with different domains
  • Greater flexibility as the higher-level abstractions make it far simpler to iterate.

further hyperledger composer is written in javascript.Composer provides you a bunch of easy-to-use components that you can quickly learn and implement.

hyperledger fabric takes you a layer lower. if you wanna start learning about blockchain architecture and underlying processes go ahead with fabric.

here is a good place to start fabric https://github.com/IBM-Blockchain/marbles

It helps you to start if you know that hyperledger fabric is a framework and hyperledger composer is a tool for building blockchain business networks. Composer provides a GUI user interface "Playground" for the creation of applications, and therefore represents an excellent starting point for Proof of Concept work.

Hyperedger Fabric: Hyperledger Fabric is one of a Hyperledger framework. It is a private permissioned blockchain commonly used in building Enterprise application.

Hyperledger Composer: It is the one of the tool of Hyperledger Framework. The main purpose of this tool is to develop the Blockchain application in less time as compared to Hyperledger Fabric Framework.

Below are the main differences between these two:

  • Developing the Blockchain application with the help of Hyperledger composer is much easier and faster.
  • The chaincode in Hyperledger Composer can be only written in javascript
  • Hyperledger composer is build on top of the Hyperledger Fabric network by utilizing its main components through connection files.
  • -

As of the 29th August 2019, the Hyperledger Composer project is in deprecated status. You can still use it, but thinking for the future it is better to start with fabric docs. And now the fabric tutorials are much improved.

Hyperledger composer is just a framework to deploy business networks on hyperledger Fabric Blockchain. You can even deploy applications on Fabric(using chaincodes written in Golang or Node) itself but composer just simplifies the process. In composer you have Participants in your network, Assets and then you define the transactions that you want to perform. You can look into composer tutorials https://hyperledger.github.io/composer/latest/tutorials/tutorials.html

To develop production ready application Composer is not the best option since it lacks from a full set of features that are available using 'native' go based smart contract. Also be aware that Composer needs to be baked up by running fabric based blockchain network, otherwise it is useless. Composer operations that are managed using Web UI are not written in any blockchain but in memory instead.

Those are the main differences between Composer and Fabric, so definetively Composer is a great tool to build mockups, make PoC, etc

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM