第 09 周作业
一、请简述 JVM 垃圾回收原理
在Java中,运行程序中没有任何指针指向的对象为垃圾对象。程序员是不需要显示的去释放一个对象的内存的,而是由虚拟机自行执行。在JVM中,有一个垃圾回收线程,它是低优先级的,在正常情况下是不会执行的,只有在虚拟机空闲或者当前堆内存不足时,才会触发执行,扫面那些没有被任何引用的对象,并将它们添加到要回收的集合中,进行回收。
二、设计一个秒杀系统,主要的挑战和问题有哪些?核心的架构方案或者思路有哪些?
主要的挑战:库存只有一份,所有人会在集中的时间读和写这些数据
主要解决的问题:并发写入、并发读取
思路:
流量尽量拦截在前端页面,比如单位时间用户只能点击一次
使用缓存优化读取商品信息
读写分离
写操作使用消息队列批量插入
评论