原文链接:
Redis特性
- 速度快
- 纯内存操作
- C语言实现
- 单线程,避免了多线程之间资源竞争
- 数据结构简单,对数据操作简
- 多路I/O复用模型
- 基于键值对的数据结构服务器
- 功能丰富
- 键过期功能(实现缓存)
- 发布订阅功能(消息系统)
- Lua脚本(创造新的redis命令)
- 简单的事务功能(一定程度上保证事务特性)
- 提供Pipline(减少网络开销)
- 简单稳定
- 客户端语言多(Java、C++、PHP、Python等)
- 持久化(RDB和AOF)
- 主从复制
- 高可用和分布式
Redis使用场景
Redis可以做什么?
- 缓存(键值过期时间设置,灵活控制最大内存和内存溢出后的淘汰策略)
- 排行榜系统(列表和有序集合)
- 数据高并发读写
- 海量数据读写
- 消息队列系统(发布订阅功能和阻塞队列的功能)
Redis不可以做什么?
- 不适合存储冷数据
- 不适合复杂的事务功能
安装并启动Redis
在Linux上安装Redis
wget http://download.redis.io/releases/redis-3.0.7.tar.gztar xzf redis-3.0.7.tar.gz ln -s redis-3.0.7 redis cd redis make make installredis-cli -vredis-cli 3.0.7复制代码
- 下载redis
- 解压redis源码安装包
- 建立redis目录软连接
- 进入redis目录
- 编译redis源代码(安装好gcc的前提下)
- 安装
- 在任意目录执行
redis-cli -v
查看版本号,出现版本号则安装成功
配置、启动、操作、关闭redis
-
启动redis
- 默认配置启动1:
redis-server
- 默认配置启动2(在后面加&使redis在后台运行):
redis-server &
- 运行启动,redis-server --修改配置名 修改配置值(可以多对):
redis-server --port 6388
- 配置文件启动:
redis-server /tools/redis/redis.conf
- 守护进程的方式启动:进入redis.conf将daemonize设置为yes,再指定这个redis.conf配置文件启动redis即可。
- 默认配置启动1:
-
Redis命令行客户端 在启动了redis服务端的前提下,使用redis-cli连接、操作redis服务。redis-cli可以使用两种方式连接redis服务器。
-
第一种交互方式(只需运行一次redis-cli):
redis-cli -h ip -p port
redis-cli -h 172.17.236.250 -p 6379172.17.236.250:6379> set Hello WorldOK172.17.236.250:6379> get Hello"World"172.17.236.250:6379> 复制代码
- 第二种交互方式:redis-cli -h ip -p {command}
redis-cli -h 172.17.236.250 -p 6379 get Hello"World"复制代码
- 停止redis 停止redis服务可执行如下操作。
redis-cli shutdown复制代码
shutdown有一个参数,代表是否在关闭 Redis 前,生成持久化文件:
redis-cli shutdown nosave|save复制代码
除了通过shutdowm命令关闭redis服务外,还可以通过kill 进程号的方式关闭redis服务,但是不能通过kill -9强制杀死redis的服务。如果强制杀死redis服务不会进行持久化操作,也不会对缓冲区资源优雅关闭,还可能丢失数据。