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.gz
tar xzf redis-3.0.7.tar.gz
ln -s redis-3.0.7 redis
cd redis
make
make install
redis-cli -v
redis-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 6379
172.17.236.250:6379> set Hello World
OK
172.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服务不会进行持久化操作,也不会对缓冲区资源优雅关闭,还可能丢失数据。
本文介绍Redis的特性,包括快速操作、纯内存存储、C语言实现、单线程模型、丰富的数据结构和功能,如键过期、发布订阅、Lua脚本、事务支持及Pipline功能。同时探讨Redis在缓存、排行榜、数据高并发读写、消息队列等场景的应用,以及其局限性,如不适用于存储冷数据和复杂事务。
3825

被折叠的 条评论
为什么被折叠?



