服务器并发-流量削峰( 二 )


这样的话,就像漏斗一样,尽量把数据量和请求量一层一层地过滤和减少 。
分层过滤的核心思想是在不同的层次尽可能地过滤掉无效的请求,让漏斗最末端的才是有效请求 。而要达到这种效果,我们就必须对数据做分层的校验 。
基本原则:
1.将动态请求的读数据缓存(Cache)在Web端,过滤掉无效的数据读取 。
2.对读数据不做强一致性校验,减少因为一致性校验产生性能瓶颈的问题 。
3.对写数据进行基于时间的合理分片,过滤掉过期的失效请求 。
4.对写请求做限流保护,将超出系统承载能力的请求过滤掉 。
5.对写数据进行强一致性校验,只保留最后有效的数据 。
分层校验的目的是在读系统中尽量减少由于一致性校验带来的系统瓶颈,但是尽量将不影响性能的检查条件提前,比如用户是否具有秒杀资格、商品状态是否正常、用户答题是否正确、秒杀是否已经结束、是否非法请求、营销等价物是否充足等 。而在写数据系统中,主要对写的数据(如库存)做一致性检查,最后在数据库层保证数据的最终准确性(如库存不能为负数) 。

【服务器并发-流量削峰】


推荐阅读