Espada

酸萝卜 ♂ 别吃

Redis 笔记六

Q:什么是内存碎片 我们可以把这些分散的空座位叫作“车厢座位碎片”,知道了这一点,操作系统的内存碎片就很容易理解了。虽然操作系统的剩余内存空间总量足够,但是应用申请的是一块连续地址空间的 N 字节,但在剩余的内存空间中,没有大小为 N 字节的连续空间了,那么,这些剩余空间就是内存碎片(比如上图中的“空闲 2 字节”和“空闲 1 字节”,就是这样的碎片)。 Q:内存碎片是如何形成的其实,内存碎......

Redis 笔记五

Q:如何应对变慢的Redis(总结) 个人总结版本 AOF 重写问题,比如设置了 everysec ,上一次还妹写完,下一次又来了 发生了 swap 内存交换 查看基线性能 查看延迟的绝对值 是否有慢查询 是否会出现同一时刻大批量 kv 的过期 是否存在 bigkey 是否存在透明大页 是否出现频繁切换 socket,需要绑核 主从集群下是否主库过大,导致 RDB 载入阻塞 老师总结......

Redis 笔记四

Q:异步机制Redis 实例有哪些阻塞点?Redis 实例在运行时,要和许多对象进行交互,这些不同的交互就会涉及不同的操作,下面我们来看看和 Redis 实例交互的对象,以及交互时会发生的操作。 客户端:网络 IO,键值对增删改查操作,数据库操作; 磁盘:生成 RDB 快照,记录 AOF 日志,AOF 日志重写; 主从节点:主库生成、传输 RDB 文件,从库接收 RDB 文件、清空数据库、......

Redis 笔记三

Q:万金油的 String 不一定好用场景: 开发一个图片存储系统,要求这个系统能快速地记录图片 ID 和图片在存储系统中保存时的 ID(可以直接叫作图片存储对象 ID)。同时,还要能够根据图片 ID 快速查找到图片存储对象 ID。 用 10 位数来表示图片 ID 和图片存储对象 ID,例如,图片 ID 为 1101000051,它在存储系统中对应的 ID 号是 3301000051。 初始......

Redis 笔记二

Q:什么是主从模式那我们总说的 Redis 具有高可靠性,又是什么意思呢? 其实,这里有两层含义:一是数据尽量少丢失,二是服务尽量少中断。AOF 和 RDB 保证了前者,而对于后者,Redis 的做法就是增加副本冗余量,将一份数据同时保存在多个实例上。即使有一个实例出现了故障,需要过一段时间才能恢复,其他实例也可以对外提供服务,不会影响业务使用。 实际上,Redis 提供了主从库模式,以保证......

Redis 笔记一

Q:Redis 变慢的原因一 这里存在一个问题,哈希冲突链上的元素只能通过指针逐一查找再操作。如果哈希表里写入的数据越来越多,哈希冲突可能也会越来越多,这就会导致某些哈希冲突链过长,进而导致这个链上的元素查找耗时长,效率降低。对于追求“快”的 Redis 来说,这是不太能接受的。 所以,Redis 会对哈希表做 rehash 操作。rehash 也就是增加现有的哈希桶数量,让逐渐增多的 en......

大容量数组随机读写的效率问题

CPU 高速缓存支棱不起来

背景昨天在刷 AcWing 每日一题的第 3732 题「矩阵复原」时,发现在大容量数组作为缓存时提交无限 TLE,但是该用 HashMap 就 ac 了。 在我浅薄的知识勺中,一直认为数组的下标作为 key 随机访问其下标的元素数据时是要快于一些集合的,HashMap 有着复杂的数据结构,底层也是数组、链表和红黑树,怎么样都不会比一维数组作为缓存来的快吧,但实际上在该背景下确实是 HashM......

LeetCode 第 243 场周赛

#1882 Process Tasks Using Servers

Problem Description 给你两个下标从 0 开始的整数数组 servers 和 tasks ,长度分别为 n 和 m 。servers[i] 是第 i 台服务器的权重 ,而 tasks[j]是处理第 j 项任务所需要的时间(单位:秒)。 你正在运行一个仿真系统,在处理完所有任务后,该系统将会关闭。每台服务器只能同时处理一项任务。第 0 项任务在第 0 秒可以开始处理,相应地......

位运算算法题小技巧

学了忘,忘了学

位运算位运算的效率就不说了,每次学会一些小技巧就忘了,还是基础不够扎实吧。。 计算某个 int 值的第 i 位(二进制位)是什么,可以用 num >> i; 有符号右移,不要在用 Integer 的 API 了 0 与 1 的转换(仅存在 1 与 0),num = 1 - num; 汉明码常用:for (int i = 0; i < 32; i++) { ......

千千万万设计模式之装饰器模式

模式千万条,生命就一条,可以下班了。

装饰器模式未完待续… ...