关于高并发和秒杀系统,你知道的和不知道的一些事
这篇文章也算是对于课程 《 PHP秒杀系统 高并发高性能的极致挑战 》 的一个整理,视频之外的另外一种形式吧。 大家也许开发过高并发的系统或者秒杀程序,但肯定都有接触过,像电商平台的秒杀、抢购等活动,还有12306春运抢票。 互联网公司,做一些有奖活动,而且数量有限,奖品给力,如果是先到先得的策略,那就类似秒杀系统了。 这类系统最大的问题就是活动周期短,瞬间流量大(高并发),很少人可以成功下单,绝大多数人都是很遗憾。所以从运营体验上,没有成功下单的人,心里肯定是不好受的,如果这时候,因为技术、网络问题,影响用户体验,那就更是骂声一片。 这里,就来讲一讲技术在这种情况下,会发生和要做的事。 下面是基本的概念的建立。 第一:高并发 技术要做的事,一方面优化程序,让程序性能最优,单次请求时间能从50ms优化到25ms,那就可以在一秒钟内成功响应翻倍的请求了。 另一方面就是增加服务器,用更大的集群来处理用户请求,设计好一个可靠且灵活扩充的分布式方案就更加重要了。 第二:时间短 火热的秒杀活动,真的是一秒钟以内就会把商品抢购一空,而大部分用户的感受是,提交订单的过程却要等待好几秒、甚至十几秒,更糟糕的当然是请求报错。 那么一个好的秒杀体验,当然希望尽可能减少用户等待时间,准确的提示用户当前是否还有商品库存。而这些,也是需要有优秀的程序设计来保证的。 第三:系统容量预估 系统设计的时候