Redis特性
速度快
- 数据存储在(内存)中 (主要原因)
- C语言编写(50000行)
- 单线程模型
持久化
- Redis所有数据保持在内存中,对数据的更新将异步保存到磁盘上
多种数据结构
- 字符串(strings)
- 哈希表(hash tables)
- 列表(lists)
- 集合(sets)
- 有序集合(sorted sets)
- 位图(BitMaps)
- 超小内存唯一值计数(HyperLogLog)
- 地理信息定位(GEO)
支持多种编辑语言
功能丰富
- 发布订阅
- Lua脚本
- 事务
- pipeline
简单
- 不依赖外部库
- 单线程模型
主从复制
- 主服务器数据复制到从服务器上
高可用,分布式
- 高可用(Redis-Sentinel(v2.8支持高可用))
- 分布式(Redis-Cluster(v3.0支持分布式))
Redis典型使用场景
-
缓存系统
计数器
实现评论计数等-
消息队列系统
-
排行榜
-
社交网络
-
实时系统
Redis启动方式
Redis安装(Linux)
- wget http://download.redis.io/releases/redis-3.0.7.tar.gz
- tar -xzf redis-3.0.7.tar.gz
- ln -s redis-3.0.7 redis(设置软连接)
- cd redis
- make && make install
Redis可执行文件说明
- redis-server (redis服务器)
- redis-cli (redis命令行客户端)
- redis-benchmark (性能检测工具)
- redis-check-aof (AOF文件修复工具)
- redis-check-dump (RDB文件修复工具)
- redis-sentinel (Sentinel服务器2.8以后)
Redis启动方式
-
最简启动
redis-server
动态参数启动
redis-server --port 6380
-
配置文件启动
redis-server redis-6380.conf
(redis-6380.conf)
(生产环境选择配置启动)
(单机多实例使用端口区分)
验证是否成功启动
ps -ef | grep redis
netstat antpl | grep redis
redis-cli -h ip -p port ping
Redis客户端连接
Redis常用配置
- daemonize (是否是守护进程 默认为no,建议yes)
- port (对外端口号 默认为6379)
- logfile (系统日志)
- dir (工作目录)