Understanding Hyperledger Fabric’s Architecture


(Skcript Bot) #1

The diagram below is gives you an overview of the entire architecture and the hierarchy of each of the components.

Domain

This is the top level namespace for your project. Say you’re building a network for a supply chain, then usually the project name or the domain name is used as the Hyperledger Fabric’s domain.

Orderers

Under a domain there are orderers (can be multiple instances) who are responsible for making sure that all the peers in the network have committed a transaction. When a transaction is proposed and committed by a peer, the orderer is informed about the new transaction and it forwards and commits this block to all adjacent peers.

Note : Orderers are not dependent on one organization. However it is suggested to have multiple orderers to reduce failure rates.

Organizations

Organizations are the containers for the peers and respective certificate authorities (CA). Each organization has its own CA and a list of peers. Usually organizations are used for physical separation of the blockchain network where each organization who uses your product can setup their physical machines and join your network.

Certificate Authorities

The certificate authority is responsible for creating users certificates. It is used for verifying ownership in the network. Each certificate authority is tied with an organization.

Peers

The peers are nodes which are connected to clients and are responsible for committing transactions to the world state. Each peer has its own copy of transactions in a couchdb database. An organization can have more an one peer. Though it is advised to have multiple peers in an orderer to avoid data loss, having more than 3 or 4 peers might result in higher latency rates.


This is a companion discussion topic for the original entry at https://www.skcript.com/svr/understanding-hyperledger-fabric-s-architecture/

#2

Thank for this informative article. I have a question about the orderers. Where is it strategic to place them? Should each organization have their own or should they be placed on separate servers/nodes?


(Ammu27) #3

can you please explain peers about peers?
According my understanding about peers is nothing but all transactions which is stored in database?
I am right?


(Krishna Kumar (Kp)) #4

Where do oracles sit in the Hyper Ledger architecture?


(Varun Raj) #5

We dont use oracles in the architecure @Krishna_Kumar_KP


(Krishna Kumar (Kp)) #6

Is there a work around for implementing oracles?


(Liping Huang) #7

Cool, thanks @varun for the explain, how about the Channel in Fabric, and how to present is in this diagram? thanks.