1. new Jedis()
を使用する代わりに、Jedis接続プールを使用してJedisインスタンスを取得してみてください 、そのためには、configでJedisPoolを構成する必要があります。これはBeanとして使用しているため、JedisPool Beanを使用し、操作を実行することになっている場所からJedisを取得し、終了後に閉じる必要があります。
2.それ以外の場合は、以下のように構成してSpringのredisTemplateを使用します
@Bean
public JedisConnectionFactory redisConnectionFactory() {
JedisConnectionFactory factory = new JedisConnectionFactory();
factory.setHostName(redisHostName);
factory.setPort(redisPort);
factory.setUsePool(true);
return factory;
}
@Bean
public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory cf) {
RedisTemplate<Object, Object> redisTemplate = new RedisTemplate<Object, Object>();
redisTemplate.setDefaultSerializer(new StringRedisSerializer());
redisTemplate.setConnectionFactory(cf);
return redisTemplate;
}