Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java getResource占用的延迟太多_Java_Redis_Jedis_Redis Cluster_Redisclient - Fatal编程技术网

Java getResource占用的延迟太多

Java getResource占用的延迟太多,java,redis,jedis,redis-cluster,redisclient,Java,Redis,Jedis,Redis Cluster,Redisclient,我有一个函数来创建一个卷轴 final JedisPoolConfig poolConfig = new JedisPoolConfig(); poolConfig.setMaxTotal(25); poolConfig.setMaxIdle(20); poolConfig.setMinIdle(20); poolConfig.setTestOnBorrow(false); poolConfig.setTestOnCreate(true);

我有一个函数来创建一个卷轴

    final JedisPoolConfig poolConfig = new JedisPoolConfig();
    poolConfig.setMaxTotal(25);
    poolConfig.setMaxIdle(20);
    poolConfig.setMinIdle(20);
    poolConfig.setTestOnBorrow(false);
    poolConfig.setTestOnCreate(true);
    poolConfig.setTestOnReturn(true);
    poolConfig.setTestWhileIdle(false);
    poolConfig.setMinEvictableIdleTimeMillis(-1);
    poolConfig.setTimeBetweenEvictionRunsMillis(-1); // don't evict
    poolConfig.setNumTestsPerEvictionRun(-1);
    poolConfig.setBlockWhenExhausted(false);
    poolConfig.setLifo(false);
    return poolConfig;
我正在使用下面的命令从池中获取客户端。我发现从池中获取客户机时,有时甚至在100-500毫秒,有时在30毫秒,都会有很高的延迟。我正在使用52个rps进行测试,配置为20个空闲连接和25个最大连接。。能够处理约600转/秒。。知道是什么导致延迟吗?在池级别是否有任何调整需要验证

    Instant instant = Instant.now();
    Instant getFromPool = null;
    try (final Jedis jedis = jedisPool.getResource()){
        getFromPool = Instant.now();
    }

您可以在池中使用以下方法检查等待线程和最大等待时间

jedisPool.getNumWaiters();
jedisPool.getMaxWaitTimeMillis()
但我认为网络层有问题