Redis 学习
- 一、为什么使用Redis?
-
- 1.1 问题现象以及解决思路
- 1.2 Nosql
- 1.3 应用场景(电商)
- 1.4 Redis
- 二、Windows下使用Redis
-
- 2.1 安装启动
- 三、Redis 基本操作
-
- 3.1信息添加
- 3.1 信息查询
一、为什么使用Redis?
1.1 问题现象以及解决思路
现象:
- 海量用户访问
- 高并发
-
关系型数据库中:
性能瓶颈:磁盘IO性能低下
扩展瓶颈:数据复杂,扩展性能差,不便于大规模集群

解决思路——Nosql
- 降低磁盘IO次数,越低越好。 ——— 内存存储
- 去除数据间关系,越简单越好。 ————不存储关系,仅存储数据
1.2 Nosql
NoSQL:Not-OnlySQL(不仅仅是SQL,泛指非关系型的数据库),作为关系数据库的补充。
作用:应对基于海量用户和海量数据前提下的数据处理问题
特征:
- 可扩容性,可伸缩
- 大数据量下高性能
- 灵活的数据模型(兼容多种数据类型)
- 高可用
常见NoSQL 数据库:
- Redis
- memcache
- HBase
- MongoDB
1.3 应用场景(电商)
1. 商品基本信息
- 名称
- 价格
- 厂商
-
……
放到MySQL中
2. 商品附加信息
- 描述
- 详情
- 评论
- ……
放到MongoDB
- 图片信息
放到分布式文件系统
-
搜索关键字
放到 ES、Lucene、Solr
- 热点信息
- 高频(访问量很高)
- 波动性(不是时时刻刻都是热点)
放到Redis、memcache、tair
1.4 Redis
概念:Redis(REmote Dictionary Server 远程字典服务)是用C语言开发的一个开源高性能键值对(key-value)数据库。
特征:
- 数据间没有必然的关联关系
- 内部采用单线程机制进行工作
- 高性能。官方提供测试数据,50个并发执行100000个请求,读的速度是110000次/s,写的速度是81000次/s
- 支持多数据类型:
- 字符串类型 ——String
- 列表类型 ——list
- 散列类型——hash
- 集合类型——set
- 有序集合类型——sorted_set
- 持久化支持。可以进行数据灾难恢复
应用:
- 为热点数据加速查询(主要场景),如热点商品、热点新闻、热点资讯、推广类等高访问量信息等。
- 任务队列,如秒杀、抢购、购票排队等
- 即时信息查询,如各位排行榜、各类网站访问统计、公交到站信息、在线人数信息(聊天室、网站)、设备信号等。
- 时效性信息控制,如验证码控制、投票控制等。
- 分布式数据共享,如分布式集群架构中的session分离
- 消息队列
- 分布式锁
二、Windows下使用Redis
2.1 安装启动
下载:https://github.com/microsoftarchive/redis/releases/tag/win-3.2.100
- 打开redis-server.exe 启动如下:
一、Redis基础入门一、为什么使用Redis?二、Windows下使用Redis三、Redis 基本操作 启动redis-cli.exe一、Redis基础入门一、为什么使用Redis?二、Windows下使用Redis三、Redis 基本操作 一、Redis基础入门一、为什么使用Redis?二、Windows下使用Redis三、Redis 基本操作
三、Redis 基本操作
3.1信息添加
命令:
set key value
功能:设置key,value数据
示例:
set name Ady
3.1 信息查询
根据key查询对应的value,如果不存在,返回空(nil)
命令:
get key
示例:
get name
清除屏幕信息:
命令:
clear
帮助:获取命令帮助文档,获取组中所有命令信息名称
命令:
help 命令名
help @组名
依次为 命令格式、功能描述、出现的版本、所属群组
退出客户端的操作:
命令:
quit
exit
esc键