包含标签 cache 中的文章

内存缓存-设计

1 缘起 在业务开发场景中,主要用到两个开发能力:接口粘合+缓存。 一个好的缓存设计,能够降低服务的时延,抵抗流量洪峰。 比如最近的西安健康码事件,明显缓存设计上是存在明显问题的 :-)。 2 什么场景需要加缓存? 提高服务质量,降低时延; 减少对下游的请求量,节省资源 3 缓存常见问题 缓存问题 解决办法 (1) 缓存失效的策略 惰性过期(读取时判断如果过期了,就返回且异步更新) (2) 缓存集中失效 设置随机过期时间 (3) 缓存击穿(大量穿透导致雪崩) singleflight 合并多个相同的请求 3.1 50行代码,实现一个可用的 singleflight? groupCache 库实现了一个可用……

阅读全文

业务缓存之可行性?

1 Preface 在业务系统中,为了提高服务的性能,降低平均时延,一个常用的手段:增加cache。 鲁迅:-)人们发明一种方法解决一个问题,而几乎总是会引入另一个问题。 那么可能会问:Cache 要加在哪里,要缓存多久,才会更有效? 下面就拿一个例子,来展开看看。 2 分析 一般而言,需要对执行频率高,耗时占比大的逻辑,优先增加Cache。 但是要注意:增加 Cache 不能影响到业务的正确性。 适用场景:数据变化不频繁,因为一旦数据发生变化,Cache可能产生不一致。 对于不一致,还需要设计一个合理的失效时间,在业务可接受的误差之内增加c……

阅读全文

CPU Cache 架构

1 SMP (Symmetric Multi-Processor) 对称式多处理器 (SMP) 是一种计算机系统结构。 多处理器结构有两种: (l) 对称 —— 多个处理器都是等价的,线程每次受调度运行时都可以动态选择在任何一个处理器上运行。 (2) 非对称 —— 处理器的结构、能力、所处的部位、和作用都各不相同,不同的线程只能在特定的处理器上运行。 通用 CPU 一般都是对称多处理器,生活中常见的CPU有 Intel Core 和 AMD 的CPU。 现代CPU朝着多核,多线程的方向发展。因为内存的存取速度远远跟不上CPU的执行速度, 所以引入了L1, L2,L3 级cache,L1 cache最小,分为指令cache和数据cache两种,两者……

阅读全文

最近文章

分类

友情链接

标签

其它