大家好,我是Java烘焙师。上一篇文章介绍了限流方案的使用和选型,本文接着讲限流算法的原理。常见的限流算法有:令牌桶、窗口计数、漏桶,前两种在实...
投稿
大家好,我是Java烘焙师。上一篇文章介绍了限流方案的使用和选型,本文接着讲限流算法的原理。常见的限流算法有:令牌桶、窗口计数、漏桶,前两种在实...
大家好,我是Java烘焙师。为了避免突增流量引起服务雪崩,需要对接口、存储资源做限流保护,根据系统负载情况设置合适的限流值。下面结合笔者的经验和...
大家好,我是Java烘焙师。如何更新缓存和DB、做到性能和一致性的取舍,是一个很常见的话题。下面结合笔者的经验和思考,系统性地总结一下缓存更新模...
背景 在跨系统之间的数据写入场景下,上下游系统极有可能因为网络超时/抖动、或写本地DB与调外部接口不能同时成功等原因,而出现数据不一致的问题,因...
业务发展过程中,增加字段是很常见、频繁的,因此怎么存储新增的字段是要重点考虑的因素。下面结合笔者的经验,总结一下各种业务扩展模式选型的优缺点、适...
正如飞机在起飞前,机长、副机长要过一遍checklist检查,确认没问题了才能起飞。楼主也整理了一个系统容量现状checklist,方便对照检查...
Spring cache是一个缓存API层,封装了对多种缓存的通用操作,可以借助注解方便地为程序添加缓存功能。常见的注解有@Cacheable、...
背景 反射在Java中非常重要,是Java区别于其他编程语言的一大特性。Java中的AOP切面、动态代理等看起来像黑魔法一样的技术,就离不开反射...
首先要回答一个问题,为何要使用HBase?随着业务不断发展、数据量不断增大,MySQL数据库存在这些问题: MySQL支持的数据量为TB级,不能...
背景 有2种常见的多维度查询场景,分别是: 带多个筛选条件的列表查询 不含分库分表列的其他维度查询 普通的数据库查询,很难实现上述需求场景,更不...