Re: How to increase capacity of peer node to handle many transactions simultaneously #hyperledger-fabric #fabric
toggle quoted messageShow quoted text
You might want to check at the client. The reason transactions fail in your case is not because of peer's incapability. I'm assuming you have created your client based on samples provided in the tutorials.
In node.js client script samples (from tutorials), for every transaction, the following happens:
1. A new grpc channel gets created and opened between client and every peer, and the invocation request is sent.
2. Client receives the response of peers and creates a transaction proposal.
3. A new grpc channel gets created between client and orderer, and the proposal is sent.
4. Client recieved response(status) from orderer.
5. Grps channels get closed.
Notice here, a new grpc channel gets created for every transaction in this case, which is costly.
Also, everytime when a communication channel is being created, client also requests for metadata of blockchain like channel, chaincodes etc. This meta data wont change on transaction basis, hence it is also unnecessarily costly.
If you reuse already created grpc channels for multiple transactions, you could achieve higher TPS.
An ideal approach would be to manage sessions for users and reuse open communication channels. After certain amount of inactivity, they can be closed.
On Thu, 12 Mar 2020, 12:28 am , <keerthycbe@...> wrote: