架构师训练营第九周课后练习
请简述 JVM 垃圾回收原理。
设计一个秒杀系统,主要的挑战和问题有哪些?核心的架构方案或者思路有哪些?
请简述 JVM 垃圾回收原理。
JVM 垃圾回收就是将 JVM 堆中的已经不再被使用的对象清理掉,释放宝贵的内存资源。
JVM 通过一种可达性分析算法进行垃圾对象的识别。
回收方法包括:清理,压缩,复制
JVM 垃圾回收算法采用 G1 垃圾回收内存管理机制
设计一个秒杀系统,主要的挑战和问题有哪些?核心的架构方案或者思路有哪些?
主要的挑战和问题包括:
网络带宽耗尽
服务器 Load 高,停止响应
数据库瘫痪
核心的架构方案和思路:
静态化:
采用 JS 自动更新技术将动态页面转化为静态页面
并发控制,防秒杀器:
设置阀门,只放最前面的一部分人进入秒杀系统
简化流程:
砍掉不重要的分支流程,如下单页面的所有数据库查询
以下单成功作为秒杀成功标志。支付流程只要在 1 天内完成即可
前端优化:
采用 YSLOW 原则提升页面响应速度
评论