https://coding.imooc.com/learn/list/151.html
Redis是什么
1.开源
2.基于键值的存储服务系统
3.多种数据结构
redis多种数据结构.png
4.高性能,功能丰富
Redis的特性回顾
1.速度快
10w OPS
数据存在哪?–>内存中
什么语言写?–> C
线程模型?–>单线程
速度快-内存.png
2.持久化(断电不丢数据)
Redis所有数据保持在内存中,对数据的更新将异步地保存到磁盘上。
3.多种数据结构
字符串,
hash
linked list
sets
Sorted Sets
BitMaps:位图
HyperLogLog:超小内存唯一值计数(计数不准)
GEO:地理位置定位
4.支持多种编程语言
java php python….
5.功能丰富
发布订阅
Lua脚本
事务
pipeLine
6.简单
23000 lines of code
不依赖外部库
单线程模型
7.主从复制
主从复制.png
8.高可用,分布式
Redis-Sentinel(v2.8) 支持高可用
Redis-Cluster(v3.0)支持分布式
Redis单机安装
linux
1.下载
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
2.解压
tar -xzf redis-3.0.7.tar.gz
- 建立软连接(似于windows下的快捷方式)
In -s redis-3.0.7 redis
4.进入目录
cd redis
- 编译和安装
make && make install
redis可执行文件说明
redis-server –>redis服务器
redis-cli –> redis命令行客户端
redis-benchmark –>redis性能测试工具
redis-check-aof –>AOF文件修复工具
redis-check-dump –> RDB文件检查工具
redis-sentinel –>Sentinel 服务器(2.8以后)
三种启动方法
1.最简启动
redis-server
2.动态参数启动
reids -server –port 6380
3.配置文件启动
reids-server configPath
三种启动方式比较
生产环境选择配置启动
单机多实例配置文件可以用端口区分开
验证启动
ps -ef |grep redis
netstat -antpl | grep redis
redis-cli -h ip -p port ping
redis客户端连接
客户端.png
redis客户端返回值
状态回复–> ping PONG
错误回复–> WRONGTYPE Operation against
整数回复–> (integer) 1
字符串回复–>”world”
多行字符串回复–》1)“hello”,2)”world”
Redis使用场景
Redis典型应用场景
1.缓存系统
缓存系统.png
2.计数器
点赞数,播放数,评论数
3.消息队列系统
简单的消息队列
4.排行榜
5.社交网络
6.实时系统
Redis常用配置
1.daemonize –>是否是守护进程(no|yes)
默认 no 建议配置为yes
2.port –>redis 对外端口号
3.logfile –> redis 系统日志
4.dir –> redis 工作目录