The SOLO default configuration for Hyperledger Composer

in #blockchain5 years ago

The SOLO default configuration for Hyperledger Composer

Hi there. I have had a hard time trying to understand Hyperledger Composer underlying default Fabric configuration. I followed all the steps in the official tutorial. Although I am very sure more than once found a problem trying to understand the architecture especially if you don't have an understanding of fabric. That’s why I compared the fabric default. The following picture is a Fabric Architecture by IBM:
1_coXmuptdVbuBb6YXjLmsiQ.jpeg

I could not find some diagrams similar to this in Hyperledger Composer to understand the configuration with the Hyperledger Fabric it uses. I just found some information on the following link:

According to that official documentation, Hyperledger Composer defines its network properties in that connection profile but is still a little bit confusing to know how many peers, ordering service, client connection configuration or channels Composer has. Therefore I tried to find the docker-composer.ylm file in fabric version hlfv12(The fabric servers that you download in the installation of Composer). In that file we can see clearly that the default configuration could be seen as follows:

1_5-9qd0UhGgNl28yfV4xMKw.jpeg

From that .yml file we can assume that hlfv12 is using the following for composer:

  • 1 Single organization(Hyperledger Composer Application) and one single client connection configuration(timeouts, connection type, etc).

  • 1 single ordering service with SOLO configuration. (More information about the possible configurations here). It means that kafka is disabled and requires more settings for using it. At the moment the system is not BFT.

  • 1 peer with endorsing and committing roles. This single peer holds the chain-code, interacts with the ordering service, and finally validates the transaction. Moreover, the peer is configured to use CouchDB as the state database. It means that the docker that represents the peer uses CouchDB.

  • 1 single channel. This is important: ‘Hyperledger Composer can only work with 1 channel, so you need to ensure that only a single channel is defined in this section even though the document can support multiple channel definitions’.(reference)

  • 1 single Certificate Authority. I am assuming this certificate has to do with the permission you can modify in the permissions.acl file.

Overall Hyperledger Composer is a good enough framework to use for jumping in quickly into the developing of the application but if you want to understand the architecture and have more options, it could be confusing using a JSON connection profile. I would suggest modifying instead the **docker-composer.ylm **instead once the Fabric architecture is understood.

Any comment is welcome if I missed something so we can build the next generation of Blockchain together :)

Sort:  

Congratulations @nemesis1346! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You received more than 10 upvotes. Your next target is to reach 50 upvotes.

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Vote for @Steemitboard as a witness to get one more award and increased upvotes!

Coin Marketplace

STEEM 0.27
TRX 0.13
JST 0.032
BTC 63088.03
ETH 2952.86
USDT 1.00
SBD 3.55