这样的话,就像漏斗一样,尽量把数据量和请求量一层一层地过滤和减少 。
分层过滤的核心思想是在不同的层次尽可能地过滤掉无效的请求,让漏斗最末端的才是有效请求 。而要达到这种效果,我们就必须对数据做分层的校验 。
基本原则:
1.将动态请求的读数据缓存(Cache)在Web端,过滤掉无效的数据读取 。
2.对读数据不做强一致性校验,减少因为一致性校验产生性能瓶颈的问题 。
3.对写数据进行基于时间的合理分片,过滤掉过期的失效请求 。
4.对写请求做限流保护,将超出系统承载能力的请求过滤掉 。
5.对写数据进行强一致性校验,只保留最后有效的数据 。
分层校验的目的是在读系统中尽量减少由于一致性校验带来的系统瓶颈,但是尽量将不影响性能的检查条件提前,比如用户是否具有秒杀资格、商品状态是否正常、用户答题是否正确、秒杀是否已经结束、是否非法请求、营销等价物是否充足等 。而在写数据系统中,主要对写的数据(如库存)做一致性检查,最后在数据库层保证数据的最终准确性(如库存不能为负数) 。
【服务器并发-流量削峰】
推荐阅读
- 电商网站对服务器配置的要求
- 掌握微信封号规律,轻松构建私域流量池
- 虚拟服务器端口映射的设置方法
- 十大企业级Linux服务器安全防护要点
- 如何在 CentOS 8/RHEL 8 上安装配置 VNC 服务器
- 华为交换机配置基于全局地址池的DHCP服务器
- 服务器配置时,是选HTTP还是HTTPS?
- 如何使用linux脚本监控Tomcat服务器是否宕机和宕机后自动重启
- 搞定Nginx高并发原理:多进程单线程和多路IO复用模型
- Linux服务器出现Socket Error「Too many open files」怎么办