[[347668]]
作者 | 悟空哥
来源 | 悟空聊架构(ID:PassJava666)
星球简介
地点:β-410 星系,A-731电商星球。
时间:新纪元 2036 年。
星球简介:
星球危机
我是一个秒杀请求,每天的工作就是将秒杀请求的数据运送给后端工作者。
这天我在 Nginx 转发服务器上遇见了请求「小空」 ,我跟小空说有重要消息不方便现在告诉他,下班再约,然后就都匆匆赶路了。
我和小空晚上十点下班后来到一家酒吧,点了两杯 mojito,找了一个角落坐下。
小空:你最近看起来心事重重。
我:你有没有发现最近我们星球的订单数急剧增加,每天有一千万订单数据产生,也不是一天、两天的事了。
小空:难怪我每天加班到晚上十点来运送请求数据。
我:我有个舅舅在航天局上班,告诉我说我们星球承载不了那么多请求和订单数据,不久就会出现「行星大爆炸」 。你可不要透露给别人。
小空:那怎么办?
我:我们可以去 100 光年外的 T-714 星球,但是只能通过秒杀通道坐时空穿梭机去那颗星球。而且名额有限制,不知道我有没有机会登上穿梭机。
我:明天通道会开启两次,上午十点和下午两点。你明天和我一起去吧!
小空:好的。
[[347669]]
星球大爆炸
「涉及的知识点:」
秒杀通道
地点:A-731 星球机场
时间:09 : 45
[[347670]]
通道
“请前往 T-714 星球的请求旅客到 Y1 站台排队等待进入特殊通道, 15 分钟后开始进入穿梭机大厅”。大厅的广播连续播放了三遍。
我走向了特殊通道,看到通道旁立着一个牌子:秒杀通道,只给秒杀请求使用。
「涉及知识点:」
实时大屏
一抬头看到通道上方有一个大屏,在不断播放 T-714 星球的照片,以及机票的订单信息。
[[347671]]
T-714 星球
有两个穿制服的工作者正在大屏旁巡逻。一个制服上印着 Nginx,一个制服上印着 CDN。
Nginx+CDN
「涉及知识点:」
Nginx 流程图
CDN 流程图
验证通道
时间:10:00
“验证通道已开启,请携带密码进入!” 又是播放了三遍广播。
输入密码
「涉及的知识点:」
穿梭机大厅
[[347674]]
穿梭机大厅
经过验证通道的筛选后,有一半的假请求被挡在门外,像我这种拿到了正确密码的顺利进入了穿梭机大厅。
来到大厅,发现大厅的正中央摆放着一个显示器,上面显示的红色数字 100 赫然映入眼中。
显示屏的左手边站着一位穿着 Redis 统一制服的靓女。在一旁的我偷听到原来她是控制显示器显示穿梭机剩余数量的。如果数字变为 0 ,则表示穿梭机已经全部被占用,后来的人就得无功而返了。
「涉及的知识点:」
抢票
显示屏的右手边站着一位西装笔挺的年轻帅哥,看到他的袖口上挂着一个红袖章,印着 Redisson 字样。他一脸严肃的模样,对大厅内黑压压一片的请求熟视无睹。可能是见惯了这种场景吧。
正在打量这位帅哥时,发现他的左手拿着一叠机票,没错,有了一张机票就可以登入穿梭机了。我以百米冲速的速度到达了他面前,到达他面前时,已经有十几个请求也到了他身边,他按照先来后到的顺序依次发放机票,到我的时候,机票已经只剩几张了,庆幸的是我的百米冲速帮我抢到了一张机票。我问帅哥是否可以再发一张票给我,他拒绝了。
每一次发放票,穿 Redis 制服的靓女都会操作显示屏,让其数量减一。
十秒钟后,票已经发完,显示屏显示数字 0 。
「涉及的知识点:」
售票窗口
登机牌
登机牌
发放机票的帅哥告诉我,拿到票后,到 A 窗口排队付款,才能拿到登记牌。于是我和另外 99 个请求一起在 A 窗口排队了。
看到一个请求想要放弃付款了,说是机票太贵了,然后准备离开大厅时,被发放机票的帅哥拦住了,他问请求是否要考虑下,有 15 分钟的考虑时间,如果请求还是觉得不行,可以将机票还给他,他可以再发放给其他人。
[[347675]]
队列削峰
「涉及的知识点:」
启航
订单创建成功后,我顺利拿到了登机牌,通过了登机牌的校验后,成功登上了穿梭机。
出发,去往 T-714 星球。听说那个星球的数据库进行了分库分表、服务也拆分成了微服务。
总结
上面通过科幻小说的方式来讲解了秒杀系统中关注的点,下面是对秒杀系统关注的八大点的一个总结:
秒杀场景关注点
本文转载自微信公众号「悟空聊架构」,可以通过以下二维码关注。转载本文请联系悟空聊架构公众号。
新闻名称:我是一个秒杀请求,正在逃离这颗星球...
路径分享:http://www.shufengxianlan.com/qtweb/news15/326765.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联