我正在通过一个场景拍摄一个节点服务器,其中有太多的ESTABLISHED连接,即使没有活动的请求。这来自测试环境,但在PROD上发现了相同的行为。
这是测试计算机的每个IP上已建立的连接数:
572 127.0.0.1
48 172.18.0.23
48 172.18.0.16
47 172.18.0.18
47 172.18.0.15
46 172.18.0.24
46 172.18.0.20
31 0.0.0.0
26
2 172.31.45.51
在localhost上,已建立的连接看起来像这样:
tcp 0 0 localhost:59596 localhost:8051 ESTABLISHED hyperledger 478386467 3632665/node /opt/h
tcp 0 0 localhost:44164 localhost:2379 ESTABLISHED etcd 459192509 529/etcd
tcp 0 0 localhost:9050 localhost:48376 ESTABLISHED root 478391433 1653221/docker-prox
tcp 0 0 localhost:8050 localhost:55040 ESTABLISHED root 478390603 1652718/docker-prox
tcp 0 0 localhost:39050 localhost:8050 ESTABLISHED hyperledger 478550015 3632665/node /opt/h
tcp 0 0 localhost:8051 localhost:60804 ESTABLISHED root 478579826 1652946/docker-prox
tcp 0 0 localhost:7051 localhost:44068 ESTABLISHED root 478581029 3355251/docker-prox
tcp 0 0 localhost:37922 localhost:9050 ESTABLISHED hyperledger 478382004 3632665/node /opt/h
tcp 0 0 localhost:53382 localhost:8050 ESTABLISHED hyperledger 478537715 3632665/node /opt/h
tcp 0 0 localhost:45914 localhost:7050 ESTABLISHED hyperledger 478384838 3632665/node /opt/h
tcp 0 0 localhost:9051 localhost:36842 ESTABLISHED root 478388152 1653426/docker-prox
tcp 0 0 localhost:56526 localhost:7050 ESTABLISHED hyperledger 478390799 3632665/node /opt/h
tcp 0 0 localhost:53918 localhost:7051 ESTABLISHED hyperledger 478608229 3632665/node /opt/h
tcp 0 0 localhost:8051 localhost:42296 ESTABLISHED root 478537891 1652946/docker-prox
tcp 0 0 localhost:7050 localhost:56334 ESTABLISHED root 478390037 1652249/docker-prox
...
localhost连接一半由root用户发起,另一半由hyperledger用户发起,这是一个1集的例子:
tcp 0 0 localhost:7051 localhost:53946 ESTABLISHED root 478608259 3355251/docker-prox
tcp 0 0 localhost:53946 localhost:7051 ESTABLISHED hyperledger 478609232 3632665/node /opt/h
localhost:53946 -> localhost:7051,这是连接到结构节点的节点服务器,并且localhost:7051 -> localhost:53946将是在连接回节点的容器上运行的结构节点。
就像我说的,即使没有电话也会发生这种情况。这是否意味着节点服务器没有关闭连接?我也不明白为什么有这么多的节点连接在不同的端口上运行。Node webserver在端口5000上设置为lisetn,但随后使用fabric SDK连接到docker上的fabric节点。这些连接看起来没有关闭,即使有一个“gateway.disconnect()”调用应该关闭它。
只有两个节点进程:
1716966 ? Sl 17:15 node app/main.js name - hyperledger-explorer
3632665 ? Ssl 7:11 node /opt/hyperledger/vm1/fabric/server/server.js
我想我在这里错过了一些核心概念,我不知道哪里错了。我想用节点应用程序的东西,但到目前为止找不到任何东西,我不太得到netstat信息。
1条答案
按热度按时间pprl5pva1#
这似乎是现在遗留节点SDK
fabric-network
的已知问题。对于Fabric 2.4v及以上版本,建议使用新的fabric-gateway
sdk来改进资源管理。