降级?限流?程序员双十一过后如何5元花3天?
2021-03-18 21:45
701 查看
双十一的话题举高不下,今年又创记录了。2684亿,我又参与了一个上千亿的“剁手”大项目。
昨天买痛快了,我们双十一花钱,华为双十一发钱,而且还是20亿!
我看了看我的钱包,只剩下 5 元了。还好再过 3 天就要发工资了,但是对于是程序员的我来说,如何 5 元花 3 天?降级 or 限流?
答案就是既要降级,又要限流。降级,就是以前大鱼大肉,现在每天要吃“土”,限流就是,以前每天吃 3 顿,现在做到 3 天吃一顿就好!
5 元花 3 天是真的可以花,到各个超市里去试吃!
但是,在程序中,我们如何做到降级限流呢?
常见的限流方式:
1)通过限制单位时间段内调用量来限流,(AtomicLong)
2)通过限制系统的并发调用程度来限流
3)使用漏桶(Leaky Bucket)算法来进行限流
4)使用令牌桶(Token Bucket)算法来进行限流,RateLimit--使用guava来做接口限流。
高并发系统时有三把利器用来保护系统:缓存、降级和限流。
降级(返回兜底数据或默认数据,如商品详情页库存默认有货)。
常见的限流有:限制总并发数(比如数据库连接池、线程池)、限制瞬时并发数(如nginx的limit_conn模块,用来限制瞬时并发连接数)、
限制时间窗口内的平均速率(如Guava的RateLimiter、nginx的limit_req模块,限制每秒的平均速率);其他还有如限制远程接口调用速率、
限制MQ的消费速率。另外还可以根据网络连接数、网络流量、CPU或内存负载等来限流。
程序员真的可以做到 5 元花 3 天!在“缺钱“的时候,通过限流降级保障服务(身体)高可用的重要性。
由缺钱引起了我们探讨了限流,降级,熔断,隔离的概念和应用,并且介绍了常用的限流策略。
相关文章推荐
- 程序员是如何应付女朋友双十一的?帮她写一个自动下单脚本就行!
- 程序员如何面对消费降级?
- 限流和降级(下) | 如何打造平台稳定性能力(二)
- VC++程序员如何做好界面
- 程序员如何缓解压力,保持心理健康
- 如何成为一名杰出的程序员?
- 如何把SQLServer数据库从高版本降级到低版本?
- 程序员如何缓解压力,保持心理健康
- 【非广告,纯干货】三四十岁的大龄程序员,应该如何保持自己的职场竞争力?
- 程序员灭火... 如何补破窗户?
- 企业如何招聘到高质量的程序员?
- 程序员如何缓解压力,保持心理健康
- 程序员如何与产品经理优雅的干架
- 如何才能造就一个优秀的程序员
- 如何尽快跻身优秀程序员行列的建议和方法
- 程序员如何防止脑疲劳:下午补充一些干果
- 菜鸟如何成为一个高效程序员的成长之路
- 做了一次关于程序员如何成长的分享
- 程序员该如何利用“有状态的服务”升级打怪?
- 如何成为一名冠军程序员?