记录学习redis过程的笔记,学习视频
Redis 入门
Nosql
针对的问题:
- 海量用户
- 高并发
关系性数据库的缺点:
- 性能瓶颈:磁盘IO性能低下
- 扩展瓶颈:数据关系复杂,扩展性差,不便于大规模集群
解决思路:
-
降低磁盘IO次数,越低越好 -------- 内存存储
-
去除数据间的关系,越简单越好 --------- 不存储关系,仅存储数据
Nosql就是针对以上两条设计的
Nosql介绍:
Nosql: 即 Not-Only sql (泛指非关系型数据库),作为关系型数据库的补充。
作用:应对基于海量用户和海量数据前提下的数据处理问题。
特征:
- 可扩容,可伸缩
- 大数据量下高性能
- 灵活的数据模型
- 高可用
常见的 Nosql 数据库:
- Redis
- memcache
- HBase
- MongoDB
实例-电商场景的解决方案:
可以看出所有的数据依然是存储在关系型数据库中的,但是为了满足客户服务的需求,针对不同的业务在关系成数据库之上有新增了一层数据库服务,这样可以提高响应速度。这里就体现了Nosql是对关系型数据库的补充,而不是替换。
Redis
Redis介绍
概念:Redis (REmote DIctionary Server) 使用C语言开发的一个开源的高性能键值对(key-value)数据库。
特征:
- 数据间没有必然的关联关系
- 内部采用单线程机制进行工作
- 高性能。官方提供测试数据,50个并发执行100000 个请求,读的速度是110000 次/s,写的速度是81000次/s。
- 多数据类型支持
- 字符串类型 string
- 列表类型 list
- 散列类型 hash
- 集合类型 set
- 有序集合类型 sorted_set
- 持久化支持。可以进行数据灾难恢复
Redis的应用
- 为热点数据加速查询(主要场景),如热点商品、热点新闻、热点资讯、推广类等高访问量信息等
- 任务队列,如秒杀、抢购、购票排队等
- 即时信息查询,如各位排行榜、各类网站访问统计、公交到站信息、在线人数信息(聊天室、网站)、设
备信号等 - 时效性信息控制,如验证码控 制、投票控制等
- 分布式数据共享,如分布式集群架构中的 session 分离
- 消息队列
- 分布式锁
Redis 的下载与安装
Redis 的下载
Linux 版(适用于企业级开发)
-
Redis 高级开始使用
-
以4.0 版本作为主版本
Windows 版本(适合零基础学习)
- Redis 入门使用
- 以 3.2 版本作为主版本
- 下载地址:https://github.com/MSOpenTech/redis/tags
Redis 的安装
如果是下载的windows的zip格式压缩包,解压即可使用,不需要在去安装。
解压后如下:
核心文件:
- redis-server.exe 服务器启动命令
- redis-cli.exe 命令行客户端
- redis.windows.conf redis核心配置文件
- redis-benchmark.exe 性能测试工具
- redis-check-aof.exe AOF文件修复工具
- redis-check-dump.exe RDB文件检查工具(快照持久化文件)
启动 Redis
服务启动,双击redis-server.exe, 即出现弹窗如下:
服务的端口号(Port):6379
服务实例ID(即进程ID) : 17008
客户端连接 , 双击 redis-cli.exe, 即出现如下弹窗:
Redis 的基本操作
命令行模式工具使用思考
- 功能性命令
- 清除屏幕信息
- 帮助信息查阅
- 退出指令
信息添加
- 功能: 设置 key, value 数据
- 命令
set key value
- 范例
set name xiaoming
信息查询
- 功能:根据key, 查询对应的value,如果不存在,返回空(nil)
- 命令
get key
- 范例
get name
如下图:
清楚屏幕信息
- 功能:清除屏幕中的信息
- 命令
clear
帮助
- 功能:获取命令帮助文档,获取组中所有命令信息名称
- 命令
help 命令名称
help @组名
如下图:
** 退出客户端命令行模式**
- 功能:退出客户端
- 命令
quit
exit
总结
reddis 入门
- Redis 简介
- Redis 的下载安装
- Redis 的基本操作
- set/get
- clear
- quit/exit/
- help