Redis学习笔记:含数据类型常用操作命令、事务、持久化等 发表于 2021-04-22 00:57 分类于 搬砖笔记 , Redis 本文字数: 31k 阅读时长 ≈ 28 分钟 典型应用场景 缓存系统 可以用string实现 计数器 有incr命令,可在单线程下进行非常高效的计数,且不会出现计数错误的问题,比如微博转发、评论的计数。 可以用string实现 购物车 可以用hash实现 排行榜 可以用有序集合实现 消息队列 可以用列表实现 活动秒杀 阅读全文 »
缓存的设计以及相关问题 发表于 2021-04-19 23:20 更新于 2024-12-07 21:20 分类于 搬砖笔记 , Redis 本文字数: 1.7k 阅读时长 ≈ 2 分钟 受益与成本 受益 加速读写 降低后端负载 成本 数据不一致:缓存层和数据层在时间窗口不一致 代码维护成本 运维成本:例如Redis cluster 缓存更新策略 各种更新策略对比 策略 一致性 维护成本 内存淘汰 (LRU/LFU/FIFO算法) 最差 低 超时剔除(expire) 较差 低 主动更新(开发控制缓存和数据一致性的业务) 高 高 阅读全文 »
《墨菲定律》读书笔记 发表于 2021-04-18 11:23 分类于 生活随笔 , 读书 本文字数: 2.2k 阅读时长 ≈ 2 分钟 书籍简介 书名:墨菲定律 编著:李原 读完时间:2021年2月 阅读全文 »
希尔排序 发表于 2021-04-13 23:05 分类于 搬砖笔记 , 排序算法 本文字数: 1.9k 阅读时长 ≈ 2 分钟 希尔排序 希尔排序是简单插入排序的改进,它是一种不稳定排序算法。由D.L.Shell在1959年提出。希尔排序实质上是一种分组插入方法。 算法描述 1、对于n个待排序的数列,取一个小于n的整数gap(称为步长)将待排序元素分成若干个组子序列,所有距离为gap的倍数的记录放在同一个组中。 2、然后对各组内的元素进行直接插入排序,这一趟排序完成之后,每一个组的元素都是有序的。 3、接下来减小gap的值,并重复执行上述的分组和排序。 4、重复这样的操作,当gap=1时,整个数列就是有序的。 阅读全文 »
快速排序 发表于 2021-03-30 23:42 分类于 搬砖笔记 , 排序算法 本文字数: 3.8k 阅读时长 ≈ 3 分钟 快速排序 快速排序(Quick Sort)由C. A. R. Hoare在1960年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。快速排序也是分治法的经典实现,是不稳定的算法。 阅读全文 »