redis
文章平均质量分 74
redis基础、核心
冬冬冬冬白
这个作者很懒,什么都没留下…
展开
-
redis基础篇
1. 什么是redis?redis的全称是REmote DIctionary Service,翻译过来就是远程词典服务2. SQL与NOSQLsql(关系型数据库):以表格的形式存储行数据存储格式需要与表结构相同表之间存在关联支持关联查询事务来保证数据一致性但是在数据量很大时,修改表结构非常困难。关系型数据库需要将数据持久化到磁盘,频繁IO操作在高并发场景下读写压力大,由此引出NOSQLnosql(非关系型数据库):存储非机构化数据表之间没有关联支持海量存储和高并发读写原创 2021-02-23 01:13:54 · 73 阅读 · 0 评论 -
redis持久化机制
redis相对与memcache最大的不同就是redis是单线程,且redis支持持久化,那么问题来了面试常见问题,redis持久后有几种方式?redis的两种持久化机制1. RDB:RDB是redis的默认持久化机制(如果开始AOF,优先使用AOF)。 当满足一定条件,会把内存中数据写入磁盘生成快照dump.rdb。redis重启会加载dump.rdb文件恢复数据RDB触发条件配置自动触发规则:配置多少秒内有多少个key被修改,触发持久化shutdown触发,服务关闭时,触发持久化手动.原创 2021-02-23 23:52:38 · 99 阅读 · 1 评论 -
Redis常用数据结构和存储结构-List
3. List存储类型List用来存储有序的字符串,元素可以重复,一个列表对象最多可以存储2^32 - 1个元素。存储结构早期版本中,数据量较小时使用ziplist存储,达到临界值时转换成linkedlist因为双向链表占用的内存比压缩列表要多, 所以当创建新的列表键时, 列表会优先考虑使用压缩列表, 并且在有需要的时候, 才从压缩列表实现转换到双向链表实现。3.2版本之后,统一使用quicklist来存储。quicklist存储了一个双向链表,每个节点都是一个ziplist,所以是qu原创 2021-07-21 20:59:47 · 113 阅读 · 0 评论 -
Redis常用数据结构和存储结构-Hash
2. Hash 哈希内部结构,结合String的图,只是ptr指向压缩列表,type为HASH原创 2021-07-20 22:52:44 · 344 阅读 · 1 评论 -
Redis常用数据结构和存储结构-String
redis数据类型String、Hash、Set、List、ZSet、Hyperloglog、Geo、Streams1. String字符串存储类型可以用来存储int(整数)、float(单精度浮点数)、String(字符串)操作命令1)赋值:SET key value。如 set hello world2)取值:GET key。如 get hello。返回是world3)自增:INCR key。就是 Mysql的AUTO_INCREMENT。每次执行 INCR key时,该key原创 2021-07-20 21:41:12 · 136 阅读 · 0 评论 -
redis的过期淘汰策略
redis有两种过期策略被动过期只有当访问一个key时才判断是否过期,过期就进行清除。节省CPU,但是浪费内存定期过期每隔一段时间进行扫描,清除过期的key对内存和CPU都比较友好可是如果key没有添加过期时间,则redis中数据会越来越多,把redis占满,所以需要使用淘汰策略来清理掉一些数据,保证新插入的数据可以存储淘汰策略LRU:最近最少使用。redis并没有使用双向链表来实现lru。Redis整体上是一个大的dict,key是一个string,而value都会原创 2021-02-23 22:56:02 · 96 阅读 · 0 评论