当前位置: 移动技术网 > IT编程>软件设计>架构 > 如何设计一个秒杀系统——开篇词|秒杀系统架构设计有哪些关键点?

如何设计一个秒杀系统——开篇词|秒杀系统架构设计有哪些关键点?

2018年10月23日  | 移动技术网IT编程  | 我要评论

最近在阅读许令波的极客专栏“如何设计一个秒杀系统”,话说马上要到双11了,秒杀系统的知识也能应用到里面。

许令波简介:

许令波,花名“君山”。说起来我的职业生涯算是比较简单,2009 年大学毕业后就进入了淘宝,一直工作了七年多。这七年多的时间里,我有幸看到了淘宝业务的快速增长,并且以开发者的身份参与其中。
说实话,作为一名程序员,我的技术能力也在公司业务的快速增长过程中得到了历练,并积累了一些大流量高并发网站架构设计和优化的经验,尤其是针对“秒杀”这个场景。因为我确信,那个时候我们肯定是对系统做了足够多的极致优化,才能扛住当时洪峰般的流量请求。

如何理解秒杀系统?

作为程序员,从整体思考问题,主要解决两个问题:
1.并发读 核心:减少用户到服务端读数据,或读更少的数据
2.并发写 核心:处理原则也一样,要求我们在数据库层面独立一个库,特殊处理,还要设计兜底方案,防止最坏情况发生。

从架构师角度考虑: 如何打造并维护一个超大流量并发读写、高性能、高可用系统。
具体分为三块:
1.高性能

支持高并发访问,主要四个方面来做优化
(1)数据库的动静分离方案 (2)热点的发现与隔离 (3)请求的削峰与分层过滤 (4)服务端的极致优化


2.一致性

秒杀商品的减库存,保证数据的一致性。有限的商品会在某一时刻被大量请求同时减库存,并且减库存的方案也有多种。


3.高可用

保证系统的高可用和确定性,还要准备一个planb  

下篇内容:设计秒杀系统时应该注意的5个架构原则

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网