小编ram*_*ris的帖子

无法获得 Jedis 连接;无法从池中获取资源

我每 5 分钟运行一次批处理作业,并且我不希望其他节点运行相同的作业,因此我使用 Jedis 锁来锁定对象 5 分钟。这样,如果其他节点尝试运行相同的作业,它们将不会获得锁定。作业在获取锁后开始,当我尝试从 Redis 读取它时,出现以下异常:

'Caused by: redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
    at redis.clients.util.Pool.getResource(Pool.java:53)
    at redis.clients.jedis.JedisPool.getResource(JedisPool.java:226)
    at redis.clients.jedis.JedisPool.getResource(JedisPool.java:16)
    at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:194)
    ... 40 more
Caused by: redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketTimeoutException: Read timed out
    at redis.clients.jedis.Connection.disconnect(Connection.java:224)
    at redis.clients.jedis.BinaryClient.disconnect(BinaryClient.java:941)
    at redis.clients.jedis.Connection.close(Connection.java:214)
    at redis.clients.jedis.BinaryClient.close(BinaryClient.java:947)
    at redis.clients.jedis.Jedis.close(Jedis.java:3412)
    at redis.clients.jedis.JedisFactory.makeObject(JedisFactory.java:117)
    at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:836)
    at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:434)
    at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:361)
    at redis.clients.util.Pool.getResource(Pool.java:49)'
Run Code Online (Sandbox Code Playgroud)

这就是我的代码

@Bean
public Jedis getJedis()
{
    Jedis jedis = new Jedis(this.redisHost, nteger.valueOf(this.redisPort));
    jedis.auth(this.redisPassword);
    return jedis;
}
Run Code Online (Sandbox Code Playgroud)

spring-boot Application.properties 文件

# DATA REDIS …
Run Code Online (Sandbox Code Playgroud)

java spring redis jedis spring-data-redis

6
推荐指数
1
解决办法
3万
查看次数

2 个具有不同数据源配置的 Hikari CP?

有没有人在 Spring Boot 应用程序中成功配置了两个具有不同数据源的 hikari 连接池?如何使用 application.properties 来做到这一点?

db2 informix spring-data-jpa spring-boot hikaricp

5
推荐指数
1
解决办法
8520
查看次数

使用 Lettuce 为 Redis 主/从配置 Spring Data Redis

使用 Lettuce,我们如何配置 Spring Data Redis 运行在主机 x 的 6379 端口和从属运行在相同或不同主机但在端口 6380 上?

java redis spring-data lettuce spring-data-redis

2
推荐指数
1
解决办法
3822
查看次数