【文件属性】:
文件名称:互联网程序员都每天刷题嘛-MiaoshaSystem:我自己的代码天地
文件大小:76.37MB
文件格式:ZIP
更新时间:2021-07-07 16:27:41
系统开源
互联网程序员都每天刷题嘛
秒杀系统项目整理
[TOC]
项目框架
可以改进成如此(网络)
秒杀系统抽象来说就是以下几个步骤:
用户选定商品下单
校验库存
扣库存
创建用户订单
用户支付等后续步骤…
整体思考
秒杀无外乎解决两个核心问题,一是并发读,一是并发写
首先从高维度出发,整体思考问题。秒杀无外乎解决两个核心问题,一是并发读,一是并发写,对应到架构设计,就是高可用、一致性和高性能的要求。关于秒杀系统的设计思考,本文即基于此
3
层依次推进,简述如下——
高性能。
秒杀涉及高读和高写的支持,如何支撑高并发,如何抵抗高IOPS?核心优化理念其实是类似的:高读就尽量"少读"或"读少",高写就数据拆分。本文将从动静分离、热点优化以及服务端性能优化
3
个方面展开
一致性。
秒杀的核心关注是商品库存,有限的商品在同一时间被多个请求同时扣减,而且要保证准确性,显而易见是一个难题。如何做到既不多又不少?本文将从业界通用的几种减库存方案切入,讨论一致性设计的核心逻辑
高可用。
大型分布式系统在实际运行过程中面对的工况是非常复杂的,业务流量的突增、依赖服务的不稳定、应用自身的瓶颈、物理资源的损坏等方