写点什么

Week9 作业

用户头像
lggl
关注
发布于: 2020 年 12 月 19 日
  • 请简述 JVM 垃圾回收原理。

垃圾定义:不再使用的对象。JVM 会通过可达性分析对象是否不再使用。手段是通过标记方式,如果一个对象没有被标记,则是可回收的对象。

回收:三步,清理、压缩、复制。

回收算法:为了提高回收的效率,一般采用分代回收,分为新生代(Eden)、老年代(From、to)。比如新生成的对象放到 Eden 区,过段时间对 Eden 区进行垃圾回收,而不是新生代和老年代一起回收。等 Eden 如果满了,则会把一些对象迁移到 From 区,From 满了,则从 From 迁移到 to。分代分区回收提高效率,另外每隔一段时间,也会进行 full gc,也就是全部区都会进行回收操作。目前主要的回收器有 G1,CMS。


  • 设计一个秒杀系统,主要的挑战和问题有哪些?核心的架构方案或者思路有哪些?


挑战:并发量高、准备时间短。

问题:原有系统性能不足,服务器资源不够,代码优化来不及。

核心架构方案和思路:

  • 限流,网关实现限流,如课程中说的三道阀门计算机,

  • 降级,为了保证业务流程可用,暂停部分服务。

  • CDN,减少网络带宽负载

  • 反向代理,增加设备,提高吞吐量。

  • 前端优化,静态资源,浏览器缓存

  • 利用缓存,不走数据库,走缓存。

用户头像

lggl

关注

还未添加个人签名 2018.08.28 加入

还未添加个人简介

评论

发布
暂无评论
Week9作业