Redis简介

Redis是一款开源的,ANSI C语言编写的,高级键值(key-value)缓存和支持永久存储NoSQL数据库产品。

Redis采用内存(In-Memory)数据集(DataSet) 。

支持多种数据类型。

运行于大多数POSIX系统,如Linux、*BSD、OS X等。

 

1 . Redis功能介绍

高速读写

数据类型丰富

支持持久化

多种内存分配及回收策略

支持事务

消息队列、消息订阅

支持高可用

支持分布式分片集群

缓存穿透(这个需要了解一下,百度有很多解释)

 

2 . 企业常用缓存产品介绍

Memcached:

优点:高性能读写、单一数据类型、支持客户端式分布式集群、一致性hash

多核结构、多线程读写性能高。

缺点:无持久化、节点故障可能出现缓存穿透、分布式需要客户端实现、跨机房数据同步困难、架构扩容复杂度高

Redis:

优点:高性能读写、多数据类型支持、数据持久化、高可用架构、支持自定义虚拟内存、支持分布式分片集群、单线程读写性能极高

缺点:多线程读写较Memcached慢

Tair:

优点:高性能读写、支持三种存储引擎(ddb、rdb、ldb)、支持高可用、支持分布式分片集群、支撑了几乎所有淘宝业务的缓存。

缺点:单机情况下,读写性能较其他两种产品较慢

 

3 . Redis使用场景介绍

Memcached:多核的缓存服务,更加适合于多用户并发访问次数较少的应用场景

Redis:单核的缓存服务,单节点情况下,更加适合于少量用户,多次访问的应用场景。

Redis一般是单机多实例架构,配合redis集群出现。

 

4 . Redis安装部署:

创建目录:

[root@redis01 ~]# mkdir /nosql/ &7 cd /nosql

下载:

[root@redis01 nosql]## wget http://download.redis.io/releases/redis-3.2.12.tar.gz

[root@redis01 nosql]# tar xzf redis-3.2.12.tar.gz

[root@redis01 nosql]#mv redis-3.2.12 redis

安装:只需要make 就可以了

[root@redis01 nosql]#cd redis && make

启动:

[root@redis01 redis]# src/redis-server &

 

5 . 客户端连接测试:

[root@redis01 redis]#src/redis-cli

127.0.0.1:6379> set foo bar  #设置一个键值

127.0.0.1:6379> get foo     #获取值

退出

127.0.0.1:6379> quit/exit

关闭redis,我们后面使用配置文件方式启动

[root@redis01 redis]#src/redis-cli

127.0.0.1:6379> shutdown

 

6. Redis基本管理操作

 [root@redis01 nosql]#mkdir /nosql/6379

把如下内容复制进去

[root@redis01 nosql]# vim /nosql/6379/redis.conf

daemonize yes               #守护进程-后台模式启动

port 6379                   #启动端口

logfile /nosql/6379/redis.log    #log文件

dir /nosql/6379               #持久化数据文件位置

dbfilename dump.rdb          #RDB持久化文件名

 

导入环境变量,可以直接敲命令,不需要全路径:

[root@redis01 redis]# vim /etc/profile

export PATH=/nosql/redis/src:$PATH

启动redis - 指定我刚才的配置文件

[root@redis01 6379]# redis-server /nosql/6379/redis.conf

 

7 . redis安全配置参数

禁止protected-mode

vim /nosql/6379/redis.conf

protected-mode  no (保护模式,是否只允许本地访问)

Bind :指定IP进行监听

vim /nosql/6379/redis.conf

bind  192.168.6.182  127.0.0.1

增加requirepass  {password}

vim /nosql/6379/redis.conf

requirepass root

 

----------验证 带密码访问-----

方法一:

[root@redis01 6379]#  redis-cli  -a  root

127.0.0.1:6379> set name xujin

OK

127.0.0.1:6379> exit

方法二:

[root@redis01 6379]# redis-cli

127.0.0.1:6379> auth root

OK

127.0.0.1:6379> set a b

 

在线查看和修改配置

查看所有配置参数:

CONFIG GET *

查看密码配置参数:

CONFIG GET requirepass

修改密码配置参数:

CONFIG SET requirepass 123456

注意:实际conf文件并没有被修改,只要redis不重启,我们在线修改的都一直生效。