一 Redis 认识Redis

1.1什么是Nosql
NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,它泛指非关系型的数据库 。随着互联网2003年之后web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的交友类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展 。
1.的分类
【一Redis 认识Redis】NoSQLList byData -2022
Nosql的一些官方介绍(全英文)
2.Redis 2.1什么是Redis
Redis 是一个高性能的 开源的、C语言写的Nosql(非关系型数据库),数据保存可以存储在内存中或者磁盘中 。因此 redis 被广泛应用于缓存方向,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value DB 。另外,Redis 也经常用来做分布式锁 。除此之外,Redis 支持事务 、持久化、LUA脚本、LRU驱动事件、多种集群方案 。不一定遵循传统数据库的一些基本要求,比如说,不遵循sql标准,事务,表结构等等,redis严格上不是一种数据库,应该是一种数据结构化存储方法的集合 。Redis和传统的关系型数据库不一样,键的类型只能为字符串,值支持五种数据类型:字符串、列表、集合、散列表、有序集合 。
2.的优缺点
优点
缺点

一  Redis 认识Redis

文章插图
2.3.Redis的使用场景
缓存:经常查询数据,放到读速度很快的空间(内存),以便下次访问减少时间 。减轻数据库压力,减少访问时间.而redis就是存放在内存中的 。就如同: 二级缓存 , 框架 缓存 。
计数器:网站通常需要统计注册用户数,网站总浏览次数等等,新浪微博转发数、点赞数 。
实时防攻击系统:防止暴力破解,如使用工具不间断尝试各种密码进行登录 。解决方案使用Redis记录某ip一秒访问到达10次以后自动锁定IP,30分钟后解锁
设定有效期的应用:设定一个数据,到一定的时间失效 。验证码,登录过期,自动解锁,购物券,红包 。
自动去重应用:Uniq 操作,获取某段时间所有数据排重值 这个使用 Redis 的 set 数据结构最合适了,只需要不断地将数据往 set 中扔就行了,set 意为 集合,所以会自动排重 。
队列:构建队列系统 使用 list 可以构建队列系统,使用set 甚至可以构建有优先级的队列系统 。
秒杀:可以把名额放到内存队列(redis),内存就能处理高并发访问 。
消息订阅系统:Pub/Sub 构建实时消息系统 Redis 的 Pub/Sub 系统可以构建实时的消息系统,比如很多用 Pub/Sub 构建的实时聊天系统 的例子 。如QQ群
2.的持久化
2.4.1什么是持久化
持久化就是把内存的数据写到磁盘中去,防止服务宕机了内存数据丢失 。
一  Redis 认识Redis

文章插图
2.4. 的持久化机制是什么?各自的优缺点?
redis有两种持久化方式一种叫RDB(Redis 数据快照),另一种夹AOF( Only File:存储操作日志)
2.4. 的 RDB
RDB是Redis默认的持久化方式 。按照一定的时间将内存的数据以快照的形式保存到硬盘中,对应产生的数据文件为dump.rdb 。通过配置文件中的save参数来定义快照的周期 。简单的来说就是将内存中的数据保存在本地磁盘文件中,而将磁盘中的文件数据,读取到内存当中!!!
优点:
缺点:
2.4. 的 AOF
AOF持久化(即 Only File持久化),则是将Redis执行的每次写命令记录到单独的日志文件中,当重启Redis会重新将持久化的日志中文件恢复数据 。简单的来说就是将服务端的写操作和删除操作记录在磁盘中的AOF文件!!!