logo头像

学如逆水行舟,不进则退!!!

QQ加我技术群
关注微信公众号
redis内部结构剖析

redis内部结构剖析

前言 在【数据结构】学习中,绕不过的就是链表和数组的学习了!数组应该更容易理解点!因为他和我们平时的逻辑一样。但是链表在刚入门的同学中应该算是比较抽象的了!尤其是指针交换位置更是容一部分同学望而却步! 今天我们来学习下Redis中的常...

【redis前传】将内存节省到极致的一种数据结构ziplist

【redis前传】将内存节省到极致的一种数据结构ziplist

前言 在我们讲解list结构的时候提到了一种特殊的结构ziplist ,俗称压缩列表。同时他也是hash结构和list结构采用的底层结构之一。他的出现是为了节省内存的一种结构。 当一个list结构的数据中只包含少量列表项且里面元素是...

redis整数集为什么不能降级

redis整数集为什么不能降级

前言整数集合相信有的同学没有听说过,因为redis对外提供的只有封装的五大对象!而我们本系列主旨是学习redis内部结构。内部结构是redis五大结构重要支撑! 前面我们分别从redis内部结构分析了redis的List、Hash、Z...

zset如何解决内部链表查找效率低下

zset如何解决内部链表查找效率低下

zset作为有序集合,内部基于跳表或者说索引的方式实现了数据的快速查找。解决了链表查询效率低下的痛点前言 紧接前文我们学习了Redis中Hash结构。在里面我们梳理了字典这个重要的内部结构并分析了hash结构rehash的流程从而解释...

注解反射应用实战

注解反射应用实战

前言 之前两篇文章我们分别介绍了反射和注解的入门,其中也有同学给到建议是从具体应用场景出发更容易理解精髓!今天笔者就结合下自己实际项目中使用到的功能!这里算是抛砖引玉了 功能需求 针对一张表做一个表单查询功能!这个功能十分的简单没有...

redis淘汰+过期双向保证高可用

redis淘汰+过期双向保证高可用

前言 redis和数据相比除了他们的结构型颠覆以外!还有他们存储位置也是不相同。传统数据库将数据存储在硬盘上每次数据操作都需要IO而Redis是将数据存储在内存上的。这里稍微解释下IO是啥意思。IO就是输入流输出流方式将数据在硬盘和内...

自己手写一个LRU策略

自己手写一个LRU策略

一、题目描述146. LRU 缓存机制 运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制 。实现LRUCache 类: LRUCache(int capacity) 以正整数作为容量 capacity 初始...

奇怪的打印机---序列化选择

奇怪的打印机---序列化选择

一、题目描述1591. 奇怪的打印机 II 给你一个奇怪的打印机,它有如下两个特殊的打印规则: 每一次操作时,打印机会用同一种颜色打印一个矩形的形状,每次打印会覆盖矩形对应格子里原本的颜色。一旦矩形根据上面的规则使用了一种颜色,那么 ...

java基础类型表示数字范围有限,如何对超限长度的数字进行运算呢?leetcode模拟加法运算超简单

java基础类型表示数字范围有限,如何对超限长度的数字进行运算呢?leetcode模拟加法运算超简单

一、题目描述66. 加一 给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 二、思路分析...

巧用策略模式完美进化四次需求变更,代码如何优雅稳健成长

巧用策略模式完美进化四次需求变更,代码如何优雅稳健成长

前言 设计模式大家应该很熟悉了,使用最多的应该就是工厂模式。关于工厂模式有简单工厂、懒汉工厂、饿汉工厂等等形式,今天我们结合项目场景来总结下策略模式 项目需求 上面是我们需求效果图!我们需要针对个人对本年度指标完成情况进行一次统计...