redis centos集群搭建和java应用

1. 首先要ssh免密登录

redis集群,3台虚拟机,6个节点,每台机器2个节点一主一从。

192.168.132.154 c0
192.168.132.156 c1
192.168.132.155 c2

  下载并解压文件,请到官网下载。文末有网盘下载地址。

tar -zxvf redis-5.0.4.tar.gz

 安装或更新C语言环境

yum install gcc-c++
安装Redis,默认安装在当前目录下,可以使用PREFIX参数更改安装位置
make install PREFIX=/home/xiaozw/soft/java/redis

2. 修改配置文件redis.conf,3台服务器,6个节点都需要修改。

 日志文件路径

logfile "/home/xiaozw/soft/tmp/redis"
Redis绑定的Ip地址
bind 192.168.132.154

bind 192.168.132.156

bind 192.168.132.155

 端口(7000-7005):

port 7000

  每个Redis的集群设置打开

cluster-enabled yes
daemonize yes

  aof日志每一个操作都记录模式

appendonly yes
查看redis状态
ps -ef|grep redis

 关闭redis

./redis-cli -h 192.168.132.154 -p 7000 shutdown
拷贝文件到其它服务器,切换当前路径到/home/xiaozw/soft/java
scp -r redis root@c1:/home/xiaozw/soft/java

3. 分别启动6个节点

./redis-server ./redis.conf

 4. 安装ruby

yum install ruby

5. 将6个Redis加入一个集群
./redis-cli --cluster create 192.168.132.154:7000 192.168.132.154:7001 192.168.132.156:7002 192.168.132.156:7003 192.168.132.155:7004 192.168.132.155:7005 --cluster-replicas 1

 

  6. java调用 

     /**
     * 配置缓存服务器ip和端口
     * @return
     */
    @Bean
    public JedisCluster JedisClusterFactory() {
        Set<HostAndPort> jedisClusterNodes = new HashSet<HostAndPort>();
        jedisClusterNodes.add(new HostAndPort("192.168.132.154", 7000));
        jedisClusterNodes.add(new HostAndPort("192.168.132.154", 7001));
        jedisClusterNodes.add(new HostAndPort("192.168.132.156", 7002));
        jedisClusterNodes.add(new HostAndPort("192.168.132.156", 7003));
        jedisClusterNodes.add(new HostAndPort("192.168.132.155", 7004));
        jedisClusterNodes.add(new HostAndPort("192.168.132.155", 7005));
        JedisCluster jedisCluster = new JedisCluster(jedisClusterNodes);
        return jedisCluster;
    }
    /**
     * 测试写入读取缓存
     */
    @RequestMapping("/getCacheTest")
    @ResponseBody
    public void getCacheTest(){
        redisDAO.set("myKey","hello world");
        System.out.println("缓存返回:"+redisDAO.get("myKey"));
    }
返回:

7. 文件下载地址

 链接:https://pan.baidu.com/s/1sgerqrHFWxxewXJBu8yyTg 

提取码:1o8d

原文地址:https://www.cnblogs.com/xiaozw/p/11865625.html