Spring Data Redis с поддержкой кластеров

1

Я хочу использовать Spring Data Redis с моей кластерной настройкой Redis.

Теперь в чистом коде Jedis для подключения к кластеру узлов Redis мы должны сделать так:

Set<HostAndPort> jedisClusterNodes = new HashSet<HostAndPort>();
        jedisClusterNodes.add(new HostAndPort("10.7.2.242", 7003));
        jedisClusterNodes.add(new HostAndPort("10.7.2.242", 7004));
        jedisClusterNodes.add(new HostAndPort("10.7.2.242", 7005));
System.out.println("jcn set initialised");
JedisCluster jc = new JedisCluster(jedisClusterNodes);
jc.set("foo_first", "bar");
String value = jc.get("foo_first");
System.out.println(value);

Это выводит на bar что является правильным.

Здесь совершенно очевидно, что для того, чтобы использовать кластер Redis через Jedis, мы должны предоставить все Ip и Port главных узлов Redis Cluster.

Теперь, когда мы подошли к Spring, Redis, у нас есть некоторые варианты,

JedisConnection
JedisConnectionFactory
RedisTemplate

но на самом деле ни один из этих классов не дает мне возможность предоставить список Ips с портами, как в приведенном выше примере.

Я что-то пропустил или есть способ обработки кластера Redis в Spring Data, также, насколько я знаю, Sentinel and Cluster (Исправить меня, если я ошибаюсь) различны в их практическом аспекте реализации, поэтому, пожалуйста, не предоставляйте примеры Стражей.

Заранее спасибо, :)

Теги:
spring
redis
jedis
spring-data

2 ответа

5
Лучший ответ

Поддержка кластеров Redis 3.0 не была интегрирована в spring-data-redis. Билет Jira DATAREDIS-315 был создан для отслеживания этого запроса. Похоже, что возможности кластера не были показаны через классы JedisConnection/JedisConnectionFactory, используемые Spring, поэтому может быть какое-то время, прежде чем вы увидите эту функцию.

5

Весенняя сессия расширила поддержку кластеров redis, начиная с 1.7.1. Пожалуйста, обратитесь к последнему справочному документу.

  • 0
    Вы имели в виду Spring Data вместо этого?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню