使用Spring Data Redis连接到多个Redis服务器

时间:2017-04-20 08:24:59

标签: java spring redis spring-data-redis

我正在处理具有以下要求的应用程序(Spring):

  • 从Redis Server1读取数据
  • 从Redis Server2读取数据
  • 从Redis Server3读取数据

  • 将信息保存到MySQL。

有人可以考虑使用Spring Data Redis连接到不同的Redis服务器。

有一个链接: http://forum.spring.io/forum/spring-projects/data/nosql/104599-how-to-connect-to-multiple-redis-instances-using-redistemplate?view=stream

但那太旧了。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

对于一次访问多个服务器没有开箱即用的支持,但您可以自己到达那里。

通常,您会使用RedisTemplate与Redis进行互动。 RedisTemplate使用RedisConnectionFactory获取每个请求的连接。您可以自己实施RedisConnectionFactory并将getConnection()调用发送到使用您的服务器配置的连接工厂。 Map<String, RedisConnectionFactory>可以容纳多个连接工厂。您将通过自定义鉴别器(通常是您在ThreadLocal级别设置的内容)进行调度。

Spring Framework为JDBC提供了与AbstractRoutingDataSource类似的东西。 GitHub上的代码应该为您提供如何实现路由RedisConnectionFactory的方法。