En resumen
Depende.
Explicación
Puede conectarse a los nodos del clúster de Redis sin enviar comandos a otros nodos. Solo debe asegurarse de acceder a las claves que maneja el nodo. Si se está conectando a un esclavo, asegúrese de que su conexión esté en READONLY
modo, de lo contrario el esclavo responderá con MOVED
.
Hay muchos clientes de Redis basados en Java:
Nivel bajo
- Jedis:API síncrona
- Lechuga:API asíncrona y de sincronización
- PRV
- JRedis
Alto Nivel
- Spring Data Redis (usa Jedis, Lettuce y SRP como controladores)
- Redisson
...y muchos más. Puede encontrar una lista más completa de clientes Java Redis en http://redis.io/clients#java
¿Qué cliente debería tomar?
Bueno, esto depende principalmente de sus requisitos. Si necesita "solo un cliente" para conexiones de corta duración, entonces quizás Jedis sea la opción correcta para usted. Si necesita flexibilidad, respuestas asíncronas y códecs personalizados, entonces la lechuga podría ser su amiga.
Si desea lidiar con colecciones Java, bloqueos y muchos más, eche un vistazo a Spring Data Redis o Redisson.
¿Qué API debería elegir?
Depende también de sus requisitos. El protocolo Redis podría ser más flexible que el protocolo Memcached, ya que Redis admite más estructuras de datos.
HTH, Marcos