redis 一二事 - 搭建集群缓存服务器

在现在并发的环境下,对大数据量的查询采用缓存是最好不过的了,本文使用redis搭建集群node

(我的喜欢redis,对memcache不感冒)redis

redis是3.0后增长的集群功能,很是强大spring

集群中应该至少有三个节点,每一个节点有一备份节点。这样算下来至少须要6台服务器缓存

考虑到有些朋友的电脑配置不是很高,跑多个虚拟机就会卡,这边放出伪分布式和分布式ruby

(2年前的配置)服务器

前提先装好一个单例状况下的redis(这里就很少说了)并发

须要6redis实例分布式

 

搭建集群的步骤:

 

在/usr/local下 建立文件夹
 
这个我是把原来的单例redis改了个名字作的
 
 
进入redis01/bin
删除dump文件
 
修改端口
 
打开注释
 
复制多份
(真实环境下只须要一个就行,而后其他5台机子重复以上操做)
指定端口从 7001 7006
 
这是真实环境下的
占用率
 
 
redis 源码文件夹下的 src 目录下。 redis-trib.rb,这个ruby脚本
 
 
第四步:把 redis-trib.rb 文件复制到到 redis-cluster 目录下。
(真实环境下,只须要放在你某个节点机子上就行,他会自动遍历到其余的节点上的,我作的时候放在了01上)
 
执行ruby脚本以前,须要安装ruby环境,否则装不了
yum install ruby
 
 
yum install rubygems
 
 
 
安装redis-trib.rb运行依赖的ruby的包
这个gem能够网上下载,不少
 
 
(真实环境下只须要在其中一台机子上运行就好了)
 
 
进入各自的redis文件夹,分别启动全部的 redis 实例
 
启动成功
 
使用 redis-trib.rb 建立集群
无论是否是伪分布式,这只须要启动一次
 
成功~!
 
连接第一个节点
 
 
下面演示使用jedis来读写缓存
固然加入spring中必定要使用单例
 1 @Test
 2     public void testCluster() throws Exception {
 3         Set<HostAndPort> nodes = new HashSet<>();
 4         nodes.add(new HostAndPort("192.168.1.193", 7001));
 5         nodes.add(new HostAndPort("192.168.1.194", 7002));
 6         nodes.add(new HostAndPort("192.168.1.195", 7003));
 7         nodes.add(new HostAndPort("192.168.1.196", 7004));
 8         nodes.add(new HostAndPort("192.168.1.197", 7005));
 9         nodes.add(new HostAndPort("192.168.1.198", 7006));
10         JedisCluster jedisCluster = new JedisCluster(nodes);
11         jedisCluster.set("name", "lee");
12         jedisCluster.set("age", "18");
13         String name = jedisCluster.get("name");
14         String value = jedisCluster.get("age");
15         System.out.println(name);
16         System.out.println(value);
17         jedisCluster.close();
18     }

运行结果:大数据

能够看到redis客户端上取数据的时候IP是不同的spa

相关文章
相关标签/搜索