F5社区-F5技术交流中心

博文精选 | 架构入门感悟之九

2021-11-16 11:43:45

F5小安

文章速览:

 

行业:互联网

 

关键字:JVM、垃圾回收原理、秒杀系统、架构方案

 

摘要:简述 JVM 垃圾回收原理;设计一个秒杀系统,主要的挑战和问题有哪些?核心的架构方案或者思路有哪些?

 

阅读时长:5分钟

 

 

以下文章来源于InfoQ!作者:莫问

 

 

Questions

1、请简述 JVM 垃圾回收原理。

JVM 垃圾回收就是将 JVM 堆中的已经不再被使用的对象清理掉,释放内存资源。

JVM 通过一种可达性分析算法识别垃圾对象。具体过程如下:

从线程栈中的局部变量、或者方法区的静态变量出发,将这些变量引用的对象进行标记,然后看这些被标记的变量是否引用其他对象,继续进行标记,所有被标记过的对象都是被使用的对象,而那些没有被标记过的对象就是可以被回收的对象。完成标记后,JVM 就会对垃圾对象占用的内存进行回收。

回收垃圾对象的内存主要有三种:清理、压缩、复制。


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

挑战包括两个维度,一个是项目交付方面,另一个是技术实现方面。

项目交付主要体现在:交付时间周期短。

技术实现方面:

1)当前系统架构技术应对高并发存在困难,如何解决该场景下的类“DDOS”攻击,秒杀大量请求图片,存在“网络带宽”耗尽风险;

2)需要提供解决方案有效应对“秒杀器”(一种是秒杀开始前不断刷新页面,直至秒杀开始,抢单;另一种是跳过秒杀页面,直接进入下单页面下单)。

核心架构方案:

1)根据业务需求,计算各类服务器台数、每个商品图片大小上限、预估业务并发模型、求助周边领域协调 CDN;

2)考虑时间短,在既有系统中进行扩展,无法按时、保质交付。考虑新建一个“秒杀系统”,并借助已有系统的既有功能交付新业务。

3)新系统需要与旧系统进行隔离,并进针对业务所需功能范围提供页面,并遵循以下原则进行方案设计。


 

 

以上是针对架构入门学习感悟的分享,希望对大家有帮助!

 

 

 

阅读原文

 

声明:本文章版权归原作者及原出处所有 。凡本社区注明来源:XXX或转自:XXX”的作品均转载自其它媒体,转载目的在于传递分享更多知识,内容为作者个人观点,仅供参考,并不代表本社区赞同其观点和对其真实性负责。本社区转载的文章,我们已经尽可能的对作者和来源进行了注明,若因故疏忽,造成漏注,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本社区拥有对此声明的最终解释权。

发布评论 加入社群

发布评论

相关文章

博文精选 | TCP 协议灵魂问题,巩固你的网路底层基础

F5小安

2022-01-14 09:11:08 316

博文精选 | 架构师入门感悟之十三

F5小安

2021-11-22 13:19:24 447

博文精选 | 架构入门感悟之十二

F5小安

2021-11-18 17:45:22 395

Login

手机号
验证码
© 2019 F5 Networks, Inc. 版权所有。京ICP备16013763号-1