Hyperledger Fabric 2.1.0 中未记录的错误 对 /protos 的请求太多.交付,超过并发限制 (



今天下午正在运行的实例很好,但突然这个错误开始弹出。它假定调用函数并成功写入账本,但拒绝如下:

Too many requests for /protos.Deliver, exceeding concurrency limit (2500)
peer0.org1.xxx.com-hold-em_1-c068ec292dc2ab380801d4f31ca83c6b86104d5adf00d7ee78b940a7a7381c02] func2 -> INFO 1402c 2020-06-16T05:43:20.627Z info [c-api:lib/handler.js]                              [xxx-dc987af0] Calling chaincode Invoke() succeeded. Sending COMPLETED message back to peer
2020-06-16 05:43:20.628 UTC [peer.chaincode.dev-peer0.org1.xxx.com-xxx_1-171cd178bf0f55cbedf8e78207e38a4f25f12a26f8ae99732d2b7a0a64ffb656] func2 -> INFO 1402d 2020-06-16T05:43:20.628Z info [c-api:lib/handler.js]                              [xxx-dc987af0] Calling chaincode Invoke() succeeded. Sending COMPLETED message back to peer
2020-06-16 05:43:20.628 UTC [endorser] callChaincode -> INFO 1402e finished chaincode: xxxduration: 39ms channel=xxx txID=dc987af0
2020-06-16 05:43:20.629 UTC [comm.grpc.server] 1 -> INFO 1402f unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=10.23.0.254:44788 grpc.peer_subject="CN=fabric-common" grpc.code=OK grpc.call_duration=41.702366ms
2020-06-16 05:43:20.647 UTC [nodeCmd] func1 -> ERRO 14030 Too many requests for /protos.Deliver, exceeding concurrency limit (2500)
2020-06-16 05:43:20.647 UTC [comm.grpc.server] 1 -> INFO 14031 streaming call completed grpc.service=protos.Deliver grpc.method=DeliverFiltered grpc.peer_address=10.23.0.254:44792 grpc.peer_subject="CN=fabric-common" error="too many requests for /protos.Deliver, exceeding concurrency limit (2500)" grpc.code=Unknown grpc.call_duration=124.448µs
2020-06-16 05:43:22.676 UTC [gossip.privdata] StoreBlock -> INFO 14032 [xxx] Received block [2657] from buffer
2020-06-16 05:43:22.681 UTC [committer.txvalidator] Validate -> INFO 14033 [xxx] Validated block [2657] in 4ms
2020-06-16 05:43:22.681 UTC [gossip.privdata] prepareBlockPvtdata -> INFO 14034 Successfully fetched all eligible collection private write sets for block [2657] channel=xxx

我不知道会发生什么。如果在较新版本上对此进行了修复,我想知道如何将 Fabric 升级到最新版本。

在 Fabric v2.1.0+ 中,对对等服务的并发请求数已默认为上限,以防止编程不良或恶意客户端对对等方进行 DoS。 您始终可以删除此限制,或通过在 core.yaml 中修改这些值来增加此限制。 若要删除限制,请将限制设置为 0,或将其增加到对环境有意义的值。

一般来说,如果出现这些消息,那是因为客户端应用程序行为异常,没有适当地释放资源。 客户端完成特定调用后,关闭并清理关联的网络资源非常重要。 与对等方连接的常见泄漏源是请求事件流,读取一个事件,然后打开一个新事件而不关闭前一个事件。

最新更新