理论 | 秒杀系统设计注意点
在秒杀的场景中,对于系统的要求其实就三个字:快、准、稳。 本文主要内容: 五个架构原则 数据要尽量少 首先是指用户请求的数据能少就少。请求的数据包括上传给系统的数据和系统返回给用户的数据(通常就是网页)。 请求数要尽量少 用户请求的页面返回后,浏览器渲染这个页面还要包含其他的额外请求,比如说,这个页面依赖的 CSS/JavaScript、图片,以及 Ajax 请求等等都定义为“额外请求”,这些额外请求应该尽量少。 路径要尽量短 就是用户发出请求到返回数据这个过程中,需求经过的中间的节点数。 依赖要尽量少 指的是要完成一次用户请求必须依赖的系统或者服务,这里的依赖指的是强依赖。 高可用 系统中的单点可以说是系统架构上的一个大忌,因为单点意味着没有备份,风险不可控,我们设计分布式系统最重要的原则就是“消除单点”,另外一种叫法“高可用”。 架构是一种平衡的艺术,而最好的架构一旦脱离了它所适应的场景,一切都将是空谈。我们需要记住的是,这里所说的几点都只是一个个方向而已,我们应该尽量往这些方向上去努力,但也要考虑平衡其他因素。 如何做动静分离 何为动静数据 那到底什么才是动静分离呢?所谓“动静分...
