虚拟机模拟搭建Redis集群环境

来源:互联网 发布:成都市广电网络分公司 编辑:程序博客网 时间:2024/05/18 18:45

问题引入:

  • 最近在练手一个项目,引入Redis缓存,由于之前没有用过,万事开头难,搭建这个环境也算磕磕碰碰。

Redis:

首先,Redis是什么,简单理解为Redis是为了减轻数据库压力而生的,它提供介于服务层和数据库之间的缓存,提高服务层获取数据的效率。
缺陷:
1. 如果服务器宕机,存取的数据会丢失,因此敏感信息比如订单交易等不能存放在单个redis服务器,关键信息应该存在关系型数据库。
2. 虽然Redis优势是缓存,然而,鱼与熊掌不可兼得,优化时间必然牺牲空间,Redis是把所有数据放到内存里的,一旦缓存存满了,就会存入虚拟内存,而虚拟内存就是硬盘,这样的读取效率反而更慢。因此,Redis不适合存取大数据,它主要缓存容量小的数据量,由于空间有限,因此有了Redis集群概念的引入。

Redis集群:

集群是多个服务器提供Redis缓存,并且采用均匀分布的Key键值存取策略,确保数据均匀存储在不同服务器上。


环境搭建,由于服务有限,先在虚拟机上模拟多个Redis服务器的配置。
1. 安装Redis
2. 复制原多个文件夹作为多个redis服务器(redis01-redis06),并修改配置文件的端口号(7001-7006)搭建多个Redis操作繁琐可以写个脚本执行

 cd redis01./redis-server redis.confcd ..cd redis02./redis-server redis.confcd ..cd redis03./redis-server redis.confcd ..cd redis04./redis-server redis.confcd ..cd redis05./redis-server redis.confcd ..cd redis06./redis-server redis.confcd ..

这里写图片描述
启动多个Redis服务,查看后台运行:
ps aux|grep redis
可以看到后台运行6个redit,端口号分别为7001-7006
这里写图片描述
3. 搭建集群环境需要运行Ruby脚本,因此还要安装Ruby,参考热心博主的方法:http://blog.csdn.net/shuai825644975/article/details/53446621
注意安装Ruby之前要先安装所需依赖库,执行make install(稍微缓慢)之后。
安装成功可以执行ruby -v查看ruby版本:
这里写图片描述
4. 执行redis-3.0.0.gem启动Redis集群
可以看到每个Redis服务分布的存取空间节点不一样,其中4、5、6作为复制节点。
这里写图片描述


通过Redis客户端1连接端口7006服务,并set一些值,可以看到它的分布大致均匀:
这里写图片描述
k1存到了7002,k2,k3存到了7001,k4存在7003。

原创粉丝点击