我们关闭父连接后,Aerospike 中的连接池中的连接是否也关闭了?

问题描述 投票:0回答:2

我正在创建的 Aerospike 连接的 ClientPolicy 的 minConnsPerNode = 10。当我在 C# 中使用以下语法创建连接时

using (AerospikeClient client = new AerospikeClient(moduleClientPolicy, address, port))
{

}

创建的 10 个连接(由于 minConnsPerNode)是否会在“}”之后关闭,或者它们将被移回连接池?

如果它们被移回连接池,我使用上述语法再次建立的下一个连接将使用池中的连接,对吗?

另外,有没有办法计算出与 Aerospike 建立的连接数量?

c# aerospike
2个回答
1
投票

我不确定您关于

minConnsPerNode
的问题,但至于您的最后一个问题,如何计算与 Aerospike 建立的连接数,如果您的意思是当前对 Aerospike 节点开放的连接数,那么您可以使用 asadm ,特别是
i net
命令将打印有关 Aerospike 网络的信息,例如:

Admin> i net
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Network Information (2020-12-18 18:15:50 UTC)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      Cluster|                          Node|         Node ID|             IP|     Build|Migrations|~~~~~~~~~~~~~~~~~~Cluster~~~~~~~~~~~~~~~~~~|Client|  Uptime
             |                              |                |               |          |          |Size|         Key|Integrity|      Principal| Conns|        
bob-cluster-a|  10-0-0-1.heln.qwest.net:3000| BB9010016AE4202|  10.0.0.1:3000|E-4.9.0.18|   0.000  |   2|C3F2BCB417C3|True     |BB9020016AE4202|     4|00:04:59
bob-cluster-a|  10-0-0-2.heln.qwest.net:3000|*BB9020016AE4202|  10.0.0.2:3000|E-4.9.0.18|   0.000  |   2|C3F2BCB417C3|True     |BB9020016AE4202|     3|00:04:59
Number of rows: 2

将在

Client conns
列下显示集群每个节点当前打开的连接数。


0
投票

minConnsPerNode 连接池中保持打开的连接数。如果连接数低于该数量,则趋势线程将打开新连接并将其放入池中。如果在某些情况下使用时关闭套接字,则可能会发生这种情况。当请求新连接时,如果池中有连接,则使用它们。因此,总的来说,您对 minConnsPerNode 的理解是正确的。 (确保服务器使用 proto-fd-idle-ms =0 [默认],因此连接不会被服务器关闭,然后必须由倾向线程重新打开以维护 minConnsPerNode。服务器使用 keep-alive 消息来检测废弃的连接客户端并关闭套接字。)

© www.soinside.com 2019 - 2024. All rights reserved.