Aerospike Go Client:没有与节点的可用连接。连接池为空,仅限于一定数量的连接

时间:2016-11-16 07:42:47

标签: go aerospike

我有8个节点的Aerospike集群。我的Aerospike Go客户端(18台服务器)每秒发送x(每秒约8k)批量请求,批量大小为8-12。我的群集和每个节点上的总TPS是多少?

我在Go客户端经常出错:

  

命令执行超时:超过重试次数。看到   Policy.MaxRetries。 (最后一个错误:没有可用的连接   节点。连接池为空,仅限于一定数量   连接。)

我想检查一下是否因为网络限制。可能是其他原因?使用的总存储量为~12-15%,并且总体上每秒写入约3k。

1 个答案:

答案 0 :(得分:2)

Aerospike Go Client dev here。

您获得的错误意味着该应用程序已使用池中可用的所有连接,并且没有可用于连接到节点的连接。

当您连接到数据库时,此行为取决于 ClientPolicy 中的以下属性:

  • ConnectionQueueSize :确定每个节点的池连接数。
  • LimitConnectionsToQueueSize :确定是否应尝试连接到节点,以防在需要连接时池为空。

MaxRetries上还有 Read/WritePolicy 属性,用于确定重试次数。

您使用的是哪个版本的go客户端,以及您为上述设置传递的值是什么?