Hyperledger Composer for Production Level Fabric Blockchain Business Solution - hyperledger-fabric

I am developing a project in Hyperledger Fabric using Composer tools. I want to know whether Composer can be used for production level projects or not. If so, then why one should develop their project in Fabric without Composer as building a project in Composer is comparatively simpler.

In production grade product you have:
Stability: Composer based on Hyperledger Fabric, so stability is equivalent to Hyperledger Fabric once it is up and running.
Security: Hyperledger Fabric passed a security audit, something that not done for Hyperledger Composer.
Hyperledger Fabric has been deployed on production by many companies around the world also in China while google search for "hyperledger composer production" gives you a post where it is says:
the answer to the below question is NO
Since the development of Composer is still in progress with the latest
version v0.18.0. The development team of Composer is very active and
the composer builds are deployed every week with some ‘Breaking
changes’. I would suggest keeping a track of the releases until
Version 1 of composer is released.
A message on LinkedIn says:
I'd probably recommend to keep Hyperledger Composer for the
prototyping phase only, and then consider other options moving forward
based on how fast you plan to be in production

Related

Benchmarking of Hyperledger fabric with Caliper (if fabric architecture is changed)

I have made some changes to the fabric architecture (let's call it "myversion" of fabric) and now I want to check the tps of a network deployed on "myversion" with caliper. Is it possible to do so? And, if yes, how would I make caliper to use "myversion", in place of fabric?
If the official sdk is still compatible with the custom fabric, then we just have to point caliper to the endpoints of the deployed network. If you broke the API, then you'll have to write your own adapter for your new platform.
Here is the link to the same:
https://chat.hyperledger.org/channel/caliper?msg=EhTjHNuvjtsqimBzF

Where to start with Hyperledger Fabric Development?

I am pretty new to Hyperledger fabric and try to understand what all topics I need to learn so that I am able to create one full application.
Like for Ethereum , I followed below steps.
1. Setup Ethereum development environment.
2. Used the solidity language to develop the smart contract and used remix as beginner to create smart contract.
3. Use of Truffle Framework for development, testing etc.
4. deploy the smart contract to blockchain either from remix or using truffle framework.
5. Use Web3 to access that smart contract function deployed on blockchain from front end.
Please help me with me similar steps for Hyperledger Fabric.
I heard about lot of terms like composer, modeling language, ACL, Scripts files under that. I also heard about Go language and SDK there.
My understanding is that, first of all Hyperledger Fabric need to be setup on the local system that I am able to do and next step is do the development of DAPP.
One option to that development is by using Hyperledger composer but I dont see use of Go language there. So I wanted to know if composer if the only option to do the development or we have any other way.
Hyperledger Composer is a tool, that 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 includes the development in to way:
You can use either Go language to write chain code or you can use composer language.
You can try both.
There is also Fabric Java SDK available for building Java client applications that interact with the blockchain.
I advise you at first to deploy a first hyperledger network in localhost (use docker-compose). You can help yourself with the fabric-sample https://github.com/hyperledger/fabric-samples.
You must understand the mechanisms of transactions (proposal, endorsement etc.) the roles of each component.
After that learning to deploy a chaincode, learn the development of GO chaincodes linked to hyperledger fabric.
Then you can approach the hyperledger SDK (NodeJS or Java).
Start with Hyperledger Composer, its a hyperledger fabric building tool: (https://hyperledger.github.io/composer/latest/introduction/introduction.html)
Composer allows you to experiment and play around with Hyperledger Fabric Blockchain through an online web interface. No need to jump into core building blocks when using Composer. The language used is mostly javascript / yml based so its easy to pick up.
Next step is to work directly with Hyperledger Fabric. But by the time you would have gone through Composer that will be your decision.
About the languages used, Hyperledger Fabric blockchain can be setup using GO, Node or Java.
as a start you can try hyperledger composer which is tool made to accelerate the implementation of your blockchain application smart contracts, ACL to your participant so to understand whats going on pleas follow the documentation in the following link
and you will find this online composer playground very helpful to get your hands on implementation and test your application flow then you can export your application file as .bna file and deploy it on your hyperledger fabric framework.
after that you have to install the prerequisites for hyperledger localy which you can find in the following link
after that you have to decide the type of fabric your going to use will it be single organization fabric which will use solo messaging server to handle synchronization between order peer and your peer.However, you can use multi organization fabric to be your framework which rely upon kafka and zookeeper to manage state between your multi orders and deploy your application.However, you can find node fabric SDK to manage your hyperledger fabric.

If I have existing nodejs web app how can i configure it with hyperledger?

As hyperledger is an enterprise blockchain solution so it does not make any sense to create a complete application from scratch, are there any resources available to explore integrating hyperledger with existing applications(specifically MEAN application)?
There are two options for integrating Hyperledger Fabric with the MEAN stack:
1) The Fabric Node SDK: https://fabric-sdk-node.github.io
2) If the Hyperledger Fabric smart contracts are built with Hyperledger Composer, Composer generates a REST API which can then be easily integrated with existing MEAN applications

creating business network in composer to fabric

If we can build a business network in composer playground online(or) locally and then deploy network in fabric, make a REST call from an angular app (user facing) to connect to blockchain.
Do I still need to learn about the fabric implementation or its infrastructure, When composer has provided me with necessary toolings to work with blockchain.
What am I missing in this ?
ps:I am still in the early phase of learning hyperledger and so not very clear as to use which and when.
Composer just provide necessary tools to work with blockchain.
But if you want to build your own blockchain network, You need to learn about fabric.
In composer guide, it mainly showed two fabric networks: One organization Hyperledger Fabric and Two organizations Hyperledger Fabric.
Let's say if you want to add one more organization or add one more peer node for each organization. You can't implement the requirements just utilize composer.
I'm also quite new to this. So if I understand well your answer lissdy, if I follow the developer tutorial (https://hyperledger.github.io/composer/tutorials/developer-tutorial.html) my network will be deployed but with only one peer ? And I need to use fabric to go further ?

Integration of Hyperledger Composer with Hyperledger Explorer

My question is related to integration of Hyperledger Composer with Hyperledger Explorer.
I am able to see channel specific explorer dashboard but not abIe to see chaincode, assets, participants or transactions added using rest server.
Is explorer works with application set up using node sdk or cli only ?
And due to this only Historian added in Composer?
Thanks in advance.
the Blockchain or - Fabric Explorer - has views/dashboard specifically for Hyperledger Fabric, and is Fabric specific. Composer provides views of the business network (or the chaincode deployed as a business network).
So 'exploration' of Fabric blockchain elements (relating to Blocks and Fabric transactions) is separate to the Composer business network elements you see through using the Composer REST APIs (ie related to a specify Composer business network you deployed - and for which you have views of individual assets, participants and transactions - as well as a history of transactions - that got you to the current world state). So the former is a Fabric view - and the latter is a view into a specific part of the ledger - ie the business network in question.

Resources