Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))

1.redis是什么?

基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
redis是一个key-value存储系统。
它支持存储的value类型:string(字符串)、list(链表)、set(集合)、zset(sorted set 有序集合)和hash(哈希类型)。
这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的,
与memcached一样,数据都是缓存在内存中。。
redis会周期性的把更新的数据写入磁盘(rdb)或者把修改操作写入追加的记录文件(aof),
并且在此基础上实现了master-slave(主从)同步。

2.为什么要用redis?

(1)速度快
因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)。
(2)支持丰富数据类型
支持string,list,set,sorted set,hash。
(3)支持事务,操作都是原子性
所谓的原子性就是对数据的更改要么全部执行,要么全部不执行。
(4)丰富的特性
可用于缓存,消息,按key设置过期时间,过期后将会自动删除。

3.memcache与redis的区别都有哪些?

(1)存储方式
Memecache把数据全部存在内存之中,断电后会挂掉,数据不能超过内存大小。
Redis有部份存在硬盘上,这样能保证数据的持久性。
(2)数据支持类型
Memcache对数据类型支持相对简单。
Redis有复杂的数据类型。
(3)使用底层模型不同
它们之间底层实现方式以及与客户端之间通信的应用协议不一样。
Redis直接自己构建了VM 机制 ,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求。
(4)value大小
redis最大可以达到1GB,而memcache只有1MB

4.redis适合的场景

(1)会话缓存(Session Cache)
最常用的一种使用Redis的情景是会话缓存(session cache)。
用Redis缓存会话比其他存储(如Memcached)的优势在于:Redis提供持久化。
(2)全页缓存(FPC)
Redis还提供很简便的FPC平台。即使重启了Redis实例,因为有磁盘的持久化,用户也不会看到页面加载速度的下降。
(3)队列
Reids在内存存储引擎领域的一大优点是提供 list 和 set 操作,这使得Redis能作为一个很好的消息队列平台来使用。
(4)排行榜/计数器
Redis在内存中对数字进行递增或递减的操作实现的非常好。集合(Set)和有序集合(Sorted Set)。
(5)发布/订阅

5.Linux中安装redis的具体过程如下:

(1)搭建实验环境

三台rhel7.3的虚拟机+一台物理机
之所以开这么多台,是为了后面的集群使用

主机信息 主机功能
server1(172.25.2.1) redis主服务器
server2(172.25.2.2) redis从服务器1
server3(172.25.2.3) redis从服务器2
真机(172.25.2.250) 下载资源和共享yum源

在真机中创建三个快照,为了确保实验环境干干净净
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第1张图片
在这里插入图片描述
用真机连接三个虚拟机
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第2张图片
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第3张图片
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第4张图片
到这里基本的实验环境已经搭建完毕,接下来我们部署redis
每个节点配置yum、安装gcc(如果已安装,请略过)

(2)从真机给redis的三个节点都传送redis的安装包
获取redis包(目前使用5.0以上版本,为了后面的redis cluster)
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第5张图片
(3)在server1(主服务器)上面进行编译安装redis,进行基本的配置
解压,进入解压后的目录
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第6张图片
在这里插入图片描述
开启编译安装
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第7张图片
进行编译与安装(编译成功后会出现新的redis脚本,eg:redis-cli),进入utils/下面,开启redis
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第8张图片
查看进程
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第9张图片
发现此时仅仅监听本机
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第10张图片
修改redis的配置文件
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第11张图片
改为监听所有
在这里插入图片描述
重新启动redis,再次查看
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第12张图片
注意:第一次使用脚本方式启动redis之后才可以使用systemd的方式来控制redis服务
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第13张图片使用redis-cli (redis命令行工具)进行测试
发现可以写入数据,查看数据,删除数据
注意:这里的数据是key-value形式,如果是同一个key的value,会进行覆盖

Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第14张图片
(4)在server2(从服务器)上面进行编译安装redis,进行基本的配置
解压,进入解压目录
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第15张图片
在这里插入图片描述
开始编译和安装
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第16张图片
开启redis
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第17张图片
编辑配置文件,设置server2是从服务器,它的主服务器是server1
在这里插入图片描述
在这里插入图片描述
注意redis的监听端口是6379
在这里插入图片描述
重启服务
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第18张图片
查看端口
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第19张图片
(5)测试
在server1上写入数据并且查看
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第20张图片
在server2上查看数据,可以看出实现了基本的主从复制,但是不能删除,没有权限
Redis分布式集群实战(3)——Redis的基础介绍与安装使用步骤(集群方案一:master/slave主从方案(配置主从复制服务))_第21张图片
总结:也可以看出redis的主从同步比mysql简单的多

6.什么是主从复制?

redis的复制功能是支持多个数据库之间的数据同步。一类是主数据库(master)一类是从数据库(slave),
主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,
并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。
从数据库的数据是以自己的主数据库为标准的

你可能感兴趣的:(linux运维——企业实战)