加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

每秒100W哀求,12306秒杀营业,架构怎样优化?

发布时间:2019-09-17 14:00:09 所属栏目:建站 来源:58沈剑
导读:如《同样是高并发,QQ/微博/12306的架构难度一样吗?》一文所述,同样是高并发场景,三类营业的架构挑衅纷歧样: QQ类营业,用户首要读写本身的数据,会见根基带有uid属性,数据会见锁斗嘴较小 微博类营业,用户的feed主页由别人宣布的动静组成,数据读写有

统一个uid计数与限速,假如担忧会见redis带宽成为瓶颈,可以这么优化:

  • 计数直接放在内存,这样就省去了收集哀求;
  • 在nginx层做7层平衡,让一个uid的哀求落到统一个呆板上;

画外音:这个计数对数据同等性、精确性要求不高,纵然处事重启计数丢了,大不了从头开始计。

除了体系上的优化,产物与营业还可以或许做一些折衷,低落架构难度。

  • 营业折衷一:一样平常来说,下单和付出放在统一个流程里,可以或许进步转化率。对付秒杀场景,产物上,下单流程和付出流程异步,放在两个环节里,可以或许低落数据库写压力。以12306为例,下单乐成后,体系占住库存,45分钟之内付出即可。
  • 营业折衷二:一样平常来说,全部用户法则沟通,体验会更好。对付秒杀场景,产物上,差异区域分时售票,固然不是全部用户法则沟通,但可以或许极大低落体系压力。北京9:00开始售票,上海9:30开始售票,广州XX开始售票,可以或许分管体系压力。
  • 营业折衷三:秒杀场景,因为短时刻内并发较大,体系返回较慢,用户神色异常焦虑,也许会频仍点击按钮,对体系造成压力。产物上可以优化为,一旦点击,不管体系是否返回,按钮立即置灰,不给用户机遇频仍点击。
  • 营业折衷四:一样平常来说,表现详细的库存数目,可以或许增强用户体验。对付秒杀场景,产物上,只表现有/无车票,而不是表现详细票数量,可以或许低落缓存裁减率。

画外音:表现库存会裁减N次,表现有无只会裁减1次。更多的,用户存眷是否有票,而不是票有几张。

无论怎样,产物技能运营一路,方针是同等的,把工作做好,不存在谁是甲方,谁是乙方的相关。

总结

对付秒杀体系,除了产物和营业上的折衷,架构计划上首要有两大优化偏向:

  • 只管将哀求拦截在体系上游;
  • 读多写罕用缓存;

【本文为51CTO专栏作者“58沈剑”原创稿件,转载请接洽原作者】

每秒100W哀求,12306秒杀营业,架构怎样优化?

戳这里,看该作者更多好文

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读