Получение ошибки redis.clients.jedis.exceptions.JedisMovedDataException: MOVED - PullRequest
0 голосов
/ 05 июля 2018

Я скопировал redis и пытаюсь вставить туда данные, используя redisTemplate. Я получаю сообщение об ошибке ниже, когда он достиг строки, которая пытается поместить данные. "redis.clients.jedis.exceptions.JedisMovedDataException: MOVED" org.springframework.data.redis.ClusterRedirectException: Перенаправление: слот 7319 на IP-адрес: 6379 .; вложенное исключение - redis.clients.jedis.exceptions.JedisMovedDataException: MOVED 7319 IP-адрес: 6379

Есть идеи? HostName в bean-компоненте redisConnectionFactory является конечной точкой конфигурации кластера.

 return items -> {
        HashOperations<String, String, String> hashOps = redisTemplate.opsForHash();
                items.forEach(item -> {

                    hashOps.put((item.getProgramName()), item.getProgramName(), item.toJson().toString());
                });
    };

@Bean
public JedisConnectionFactory redisConnectionFactory() {
    JedisConnectionFactory redisConnectionFactory = new JedisConnectionFactory();
    redisConnectionFactory.setHostName(hostName);
    redisConnectionFactory.setPort(port);
    return redisConnectionFactory;
}

@Bean(name = "redisTemplate")
public RedisTemplate<String, String> redisTemplate() {
    RedisTemplate<String, String> redisTemplate = new RedisTemplate<String, String>();
    redisTemplate.setConnectionFactory(redisConnectionFactory());
    redisTemplate.setDefaultSerializer(new StringRedisSerializer());


    return redisTemplate;
}

1 Ответ

0 голосов
/ 10 октября 2018

Вы используете кластер Redis, но ваша конфигурация предназначена для автономной фабрики соединений Jedis. Вы должны предоставить RedisClusterConfiguration для создания JedisConnectionFactory.

Помогут следующие посты:

http://stackoverflow.com.mevn.net/questions/46667584/springboot-elasticache-jedismoveddataexception-moved

Как настроить redis-cluster при использовании spring-data-redis 1.7.0.M1

...