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不重启,我们在线修改的都一直生效。