Ibm cloud IBM BLUEMIX区块链SDK-DEMO失败
我一直在为Node.js使用HFCSDK,它过去也能工作,但从昨晚开始,我遇到了一些问题 当运行helloblockchain.js时,只有几次有效,大多数情况下,当它尝试注册新用户时,我会出现此错误:Ibm cloud IBM BLUEMIX区块链SDK-DEMO失败,ibm-cloud,blockchain,Ibm Cloud,Blockchain,我一直在为Node.js使用HFCSDK,它过去也能工作,但从昨晚开始,我遇到了一些问题 当运行helloblockchain.js时,只有几次有效,大多数情况下,当它尝试注册新用户时,我会出现此错误: E0113 11:56:05.983919636 5288 handshake.c:128] Security handshake failed: {"created":"@1484304965.983872199","
E0113 11:56:05.983919636 5288 handshake.c:128] Security handshake failed: {"created":"@1484304965.983872199","description":"Handshake read failed","file":"../src/core/lib/security/transport/handshake.c","file_line":237,"referenced_errors":[{"created":"@1484304965.983866102","description":"FD shutdown","file":"../src/core/lib/iomgr/ev_epoll_linux.c","file_line":948}]}
Error: Failed to register and enroll JohnDoe: Error
其他情况下,注册工作正常,部署链码时出现故障:
Enrolled and registered JohnDoe successfully
Deploying chaincode ...
E0113 12:14:27.341527043 5455 handshake.c:128] Security handshake failed: {"created":"@1484306067.341430168","description":"Handshake read failed","file":"../src/core/lib/security/transport/handshake.c","file_line":237,"referenced_errors":[{"created":"@1484306067.341421859","description":"FD shutdown","file":"../src/core/lib/iomgr/ev_epoll_linux.c","file_line":948}]}
Failed to deploy chaincode: request={"fcn":"init","args":["a","100","b","200"],"chaincodePath":"chaincode","certificatePath":"/certs/peer/cert.pem"}, error={"error":{"code":14,"metadata":{"_internal_repr":{}}},"msg":"Error"}
或:
这个代码昨天起作用了,所以我不知道会发生什么
有人知道我怎么修吗
谢谢,
哈维尔
ibm bluemix
区块链这些类型的间歇性问题通常与GRPC相关。初步建议是确保您至少使用GRPC版本1.0.0 如果您使用的是Mac,则应检查打开的文件描述符的最大数量(使用
ulimit-n
)。有时,该值最初设置为较低的值,如256,因此增加该值可能会有所帮助
有两个GRPC问题具有类似症状
grpc.initial\u reconnect\u backoff\u ms
属性。将该值增加到1000毫秒以上可能有助于减少问题的发生频率。下面是如何修改helloblockchain.js文件以将此属性设置为更高值的说明
enrollAndRegisterUsers
函数“grpc.initial\u reconnect\u backoff\u ms”:5000
到setMemberServicesUrl
调用
chain.setMemberServicesUrl(ca_url, {
pem: cert, "grpc.initial_reconnect_backoff_ms": 5000
});
chain.addPeer("grpcs://" + peers[i].discovery_host + ":" + peers[i].discovery_port,
{pem: cert, "grpc.initial_reconnect_backoff_ms": 5000
});
“grpc.initial\u reconnect\u backoff\u ms”:5000
到addPeer
调用
chain.setMemberServicesUrl(ca_url, {
pem: cert, "grpc.initial_reconnect_backoff_ms": 5000
});
chain.addPeer("grpcs://" + peers[i].discovery_host + ":" + peers[i].discovery_port,
{pem: cert, "grpc.initial_reconnect_backoff_ms": 5000
});
grpc.initial\u reconnect\u backoff\u ms
属性可能会降低问题的频率,但不一定会消除所有问题
与helloblockchain.js文件中的eventhub的连接也可能是一个因素。Hyperledger结构客户端的早期版本没有使用eventhub。可以尝试此早期版本来确定这是否会产生影响。运行
git clone后https://github.com/IBM-Blockchain/SDK-Demo、 git
,运行git checkout b7d5195
以使用此先前级别。在从node.js命令窗口运行节点helloblockchain.js
之前,可以使用git status
命令检查正在使用的代码级别。这些类型的间歇性问题通常与GRPC相关。初步建议如下:确保您使用的GRPC版本至少为1.0.0
如果您使用的是Mac,则应检查打开的文件描述符的最大数量(使用ulimit-n
)。有时,最初将其设置为较低的值,如256,因此增加该值可能会有所帮助
有两个GRPC问题具有类似症状
grpc.initial\u reconnect\u backoff\u ms
属性。将值增加到1000 ms以上可能有助于减少问题的发生频率。以下是如何修改helloblockchain.js文件以将此属性设置为更高值的说明
enrollAndRegisterUsers
函数“grpc.initial\u reconnect\u backoff\u ms”:5000
到setMemberServicesUrl
调用
chain.setMemberServicesUrl(ca_url, {
pem: cert, "grpc.initial_reconnect_backoff_ms": 5000
});
chain.addPeer("grpcs://" + peers[i].discovery_host + ":" + peers[i].discovery_port,
{pem: cert, "grpc.initial_reconnect_backoff_ms": 5000
});
“grpc.initial\u reconnect\u backoff\u ms”:5000
到addPeer
调用
chain.setMemberServicesUrl(ca_url, {
pem: cert, "grpc.initial_reconnect_backoff_ms": 5000
});
chain.addPeer("grpcs://" + peers[i].discovery_host + ":" + peers[i].discovery_port,
{pem: cert, "grpc.initial_reconnect_backoff_ms": 5000
});
grpc.initial\u reconnect\u backoff\u ms
属性可能会降低问题的频率,但不一定会消除所有问题
与helloblockchain.js文件中的eventhub的连接也可能是一个因素。Hyperledger结构客户端的早期版本没有使用eventhub。可以尝试此早期版本来确定这是否会产生影响。运行git clone后https://github.com/IBM-Blockchain/SDK-Demo、 git
,运行git checkout b7d5195
以使用此先前级别。在从node.js命令窗口运行节点helloblockshain.js
之前,可以使用git status
命令检查正在使用的代码级别