sql >> Database >  >> NoSQL >> Redis

Kan geen Jedis-verbinding krijgen; Kan een bron niet uit de pool halen

1.Probeer de Jedis-verbindingspool te gebruiken om de Jedis-instantie te krijgen in plaats van new Jedis() te gebruiken , daarvoor moet je JedisPool configureren in config. Aangezien je het als bean gebruikt, moet je JedisPool bean gebruiken en vervolgens Jedis ervan halen waar je ook een bewerking moet uitvoeren en het sluiten nadat je klaar bent.

2. Gebruik anders spring's redisTemplate met configuratie zoals hieronder

@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;
}


  1. Redis - Gesorteerde set, zoek item op eigenschapswaarde

  2. Gebruikt Redis een gebruikersnaam voor authenticatie?

  3. Krijg rechtstreeks toegang tot MongoDB via JavaScript

  4. Afbeeldingen opslaan in een MongoDB-database