sql >> Databasteknik >  >> NoSQL >> Redis

SpringBoot Elasticache JedisMovedDataException:FLYTTAD

Du kör din Elasticache i Redis Cluster-läge (endast Redis Cluster svarar med MOVED ) men anslutningsfabriken är konfigurerad i fristående läge.

Spring Boot kan automatiskt konfigurera alla saker du har ställt in manuellt åt dig. I princip, ta bort din CacheConfiguration klass (eller åtminstone ta bort majoriteten av koden):

@Configuration
public class CacheConfiguration {

  @Bean
  public RedisTemplate<String, Company> redisTemplate(RedisConnectionFactory connectionFactory) {
      RedisTemplate<String, Company> template = new RedisTemplate();
      template.setConnectionFactory(connectionFactory);
      return template;
  }
}

Och konfigurera sedan följande egenskaper i dina application.properties fil:

spring.redis.cluster.nodes=<node_host>:<port> # Comma-separated list of "host:port" pairs to bootstrap from.

Spring Boot laddar application.properties som standard och Redis auto-config konfigurerar en RedisTemplate<Object, Object> böna som standard. Specialiserade bönor är ett giltigt användningsfall – duplicera inte det som redan tillhandahålls av den automatiska konfigurationen, särskilt om du vill uppnå vad den automatiska konfigurationen gör.

Se även:

  • Vanliga programegenskaper
  • Externaliserad konfiguration



  1. Några detaljerade och specifika skäl till varför MongoDB är mycket snabbare än SQL DB?

  2. Det gick inte att ansluta till 127.0.0.1:27017, anledning:errno:111 Anslutningen nekades

  3. MongoDB bulkWrite()

  4. Hur lagrar man resultat från dynamiskt genererade formulär i MongoDb?