Spring Boot 连接 redis 集群

£神魔★判官ぃ 2022-05-31 02:27 248阅读 0赞

我的个人刷Java面试题网站:http://www.study-java.cn/

最近一直在画小程序的界面,感觉自己都快成为一个前端工程师了,尤其是前面做管理后台的时候使用Angular4,让自己有点头大。都快忘记自己是Java开发了。。。上周自己在三台服务器上面搭建了一个redis集群,每台服务器创建三个实例,端口分别是7000,7001,7002…..7008。搭建过程中遇到的一个问题就是centos 7配置ruby最高配置2.0.0的版本,需要用rvm来更新ruby。

首先看一下redis 集群的目的是做什么:

随着企业数据量的增多,Redis不论作为数据存储或是缓存,它的数据量也会逐渐增多,虽然Redis的速度非常可观,但随着其中的数据量的庞大,并且仅仅在一个设备或是一个Redis实例中,其存取速度也会大打折扣,所以我们需要在不同的设备或服务器上,搭建多个Redis实例仓库,将原来的Redis的所有的keys分发到各个服务器的Redis上,这就是现在所谓的Redis集群(Redis Cluster)。

Redis集群中使用哈希槽来存储客户端的keys,而在Redis中,目前存在16384个哈希槽,它们被全部分配给所有的节点。

ok 在前面我已经搭建好集群的环境。

既然环境搭建好了,那就用Spring Boot(已经爱上这个框架了,虽然公司仍然还在用Spring MVC,Spring,Mybatis)简单连接一下。

IDEA新建一个Spring Boot项目,在新建过程中,选中Nosql中的redis,这样pom文件会自动集成redis。

配置文件中:(简单配置一下)

  1. spring.redis.cluster.nodes=115.xxx.xx.xxx:7000,115.xxx.xx.xxx:7001,...,111.xxx.xxx.xx:7008
  2. spring.redis.password=password

单元测试(Spring Boot 项目下有test文件夹)

  1. package com.example.demo;
  2. import org.junit.Test;
  3. import org.junit.runner.RunWith;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.boot.test.context.SpringBootTest;
  6. import org.springframework.data.redis.core.RedisTemplate;
  7. import org.springframework.data.redis.core.ValueOperations;
  8. import org.springframework.test.context.junit4.SpringRunner;
  9. @RunWith(SpringRunner.class)
  10. @SpringBootTest
  11. public class DemoApplicationTests {
  12. @Autowired
  13. RedisTemplate<String,String> redisTemplate;
  14. @Test
  15. public void contextLoads() {
  16. }
  17. @Test
  18. public void test(){
  19. ValueOperations<String, String> opsForValue = redisTemplate.opsForValue();
  20. opsForValue.set("redisKey","cluster test");
  21. System.out.println("11"+opsForValue.get("test"));
  22. }
  23. }

更多文章请关注公众号:每天学Java。想获得更多最新面试提醒请进入小程序:每天学Java

公众号二维码: 小程序二维码:

70 70 1

发表评论

表情:
评论列表 (有 0 条评论,248人围观)

还没有评论,来说两句吧...

相关阅读