Aerospike客户端未遵守connectionQueueSize限制及MaxRetries设为0后报错问题求助
Aerospike客户端未遵守connectionQueueSize限制及MaxRetries设为0后报错问题求助
我们有一个运行在高并发环境下的Go应用,每个请求都会通过启动多个goroutine来执行多次Aerospike读取操作。目前遇到了一个间歇性问题:客户端会超出connectionQueueSize的限制。当前使用的客户端配置如下:
"ConnectionTimeoutMs": 1000, "SocketTimeoutMs": 50, "TimeoutMs": 100, "ConnectionQueueSize": 150, "LimitConnectionsToQueueSize": true
我们尝试过调整connectionQueueSize(增大、减小甚至使用默认值),但问题依然存在。
最近我们做了两个改动来尝试解决问题:
- 将客户端改为单例模式
- 把
MaxRetries设为0,猜测可能是重试机制导致连接池中的连接数超过限制
但设置MaxRetries=0后,我们遇到了新的错误:
command execution timed out on client: Exceeded number of retries. See Policy.MaxRetries. why it says exceeded no of retries, when maxretries is set to 0
总结下来,这些尝试都没有解决问题,希望能得到各位的指点,感谢!
补充说明:我们使用的是Aerospike社区版。
备注:内容来源于stack exchange,提问作者dhamu
相关产品推荐
相关产品推荐

