У меня есть класс DAO, кеширующий дату
@Cacheable("dateCache")
public Date getSystemTime()
{
String query = "SELECT f_sys_date FROM DUAL";
return (Date)
this.entityManager.createNativeQuery(query).getSingleResult();
}
Моя конфигурация jedis установлена как
JedisPoolConfig poolConfig = new JedisPoolConfig();
poolConfig.setMaxTotal(300);
poolConfig.setMaxIdle(50);
poolConfig.setMinIdle(10);
poolConfig.setMaxWaitMillis(6000);
poolConfig.setTestOnBorrow(false);
poolConfig.setTestOnCreate(false);
poolConfig.setTestWhileIdle(false);
poolConfig.setTestOnReturn(false);
poolConfig.setMinEvictableIdleTimeMillis(60000);
poolConfig.setTimeBetweenEvictionRunsMillis(30000);
poolConfig.setNumTestsPerEvictionRun(-1);
poolConfig.setFairness(true);
connectionFactory.setPoolConfig(poolConfig);
connectionFactory.setUsePool(true);
connectionFactory.afterPropertiesSet();
Часто я получаю блокировку dateCache ~ на экземпляре сервера Redis, и приложение зависает.
Я нашел какую-то ссылку по этому вопросу, но не смог получить большую помощь
https://lifelongprogrammer.blogspot.com/2017/05/problem-solving-redis-cache.put-hangs.html