电商项目_秒杀_初步分析

秒杀的特点:

1. 不能超卖,库存要求严格

  1. 参加的人越多越好

秒杀的挑战:

  • 巨大的瞬间流量
  • 热点数据
  • 刷子流量:刷子的高频次请求,会挤占正常用户的抢购通道,同时,刷子也获得了更高的秒杀成功率。破获抢购环境。

秒杀初步分析

普通的电商场景,为了提高三高性能,使用的各种手段更多的都是协调各种硬件资源,而秒杀场景,简单的协调硬件资源是不够的,还需要软件更极致的挖掘硬件资源。

商品抢购过程:

一次HTTP调用经过的节点:

和秒杀相关的:

  • 秒杀活动数据
  • 提供结算页:参与抢购的商品信息
  • 下单

秒杀流量隔离

业务隔离:秒杀商户业务上会提前进行准备,技术人员就可以评估处大致流量

系统隔离:⽐较常⻅的实践是对会被流量冲击⽐较⼤的核⼼系统进⾏物理隔离,⽽相对链路末端的⼀些系统,经过前⾯的削峰之后,流量⽐较可控了,这些系统就可以不做物理隔离。

  1. 秒杀详情页域名独立
  2. 独立的Nginx负载均衡器
  3. 独⽴的详情⻚后端服务

⼀般来说,秒杀中流量冲击⽐较⼤的核⼼系统就是秒杀详情⻚、秒杀结算⻚、秒杀下单库存扣减是需要我们重点关注的对象

数据隔离:

数据层的专有部署,需要结合秒杀的场景来设计部署拓扑结构,⽐如 Redis缓存,⼀般的场景⼀主⼀从就够了,但是在秒杀场景,需要⼀主多从来扛读热点数据。

相关推荐
mldong10 分钟前
用 DDD 设计工作流引擎:聚合根与充血模型
java·架构
mqiqe1 小时前
AgentScope Java Harness:4. 双层记忆系统 让 Agent 拥有真正的“长期大脑“
java·开发语言
伍一511 小时前
03-文件管理模块-一个看似简单的模块藏着多少细节
java·ruoyi·若依
gugucoding1 小时前
46. 【Java】JUC并发工具:让并发更简单
java·开发语言
Nebula_g2 小时前
JavaSE基础语法:面向对象高级(代码中的成分)
java·开发语言·编程·javase·技术栈·高级语法
AC赳赳老秦3 小时前
公开图片 OCR 数据提取:OpenClaw 合规采集公开信息图,识别文字与表格并转化为结构化数据
java·大数据·前端·数据库·python·php·openclaw
小强库计算机毕业设计4 小时前
SpringBoot+Vue3 学生宿舍管理系统实战
java·spring boot·后端·vue·学生宿舍管理系统
李冰然4 小时前
深入Java集合框架:HashMap源码解析(JDK 8)
java
人道领域5 小时前
【0-1的agent进阶篇】RAG:从Embedding到检索增强生成的底层逻辑
java·embedding·agent·rag
桦说编程6 小时前
盘点并发集合里那些容易误判的行为
java·后端·性能优化