分布式架构 高并发处理
高并发介绍
- 在同时或者极短时间内,有大量请求到达服务端,每个请求都需要服务端耗费资源进行处理,并做出相应反馈
- 服务端比如同时开启进程数,能同时运行的线程数、网络连接数、CPU运算、I/O、内存都是有限,
所以服务端能同时处理请求也是有限的。高并发本质就是资源的有限性
如:1.系统在线人数10W,并不意味系统并发用户是10W,可能存在10w用户同时在首页查看静态文章,并未对服务器进行发送请求
那么高并发数 是根据系统真实用户数并发送请求需要服务端耗费资源进行处理的请求
2.服务端只能开启100个线程,恰好1个线程处理一个请求需要耗时1s,那么服务端1s只能处理100个请求,多余请求无法处理
经典案例
- 商品、活动秒杀下订单
准备阶段
- 系统独立部署
- 做好系统容量规划(7-7.5折计算),系统优化、系统容灾限流等方案
- 做好系统拆分,如:功能模块、实时/非实时、动态/静态等
- 参加活动商品设置定时上架时间
- 服务器时间同步(集群中每台机器时钟要保持一致)
- 动态生成下单页面的URL
实现阶段
客户端层面:
- 前端页面采用h5静态化,ajax获取动态内容;如实时库存、活动状态、当前时间等
- 做CDN部署加速