9、案例实战【处理百万级交易无压力】:JVM栈内存与永久代大小又该如何设置?

本文通过支付系统案例探讨了不合理内存设置导致的问题,如瞬间访问量翻倍,使得老年代内存压力增大,频繁触发垃圾回收。文章强调了合理设置永久代和栈内存的重要性,以应对高并发场景,确保系统稳定运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

9.1、前文回顾

上一篇文章通过案例分析,向大家介绍了在准备上线新系统时,如何根据预估的业务量和访问量来推算系统每秒的并发量。接下来,我们将探讨如何根据这个并发量来估算每秒钟请求对内存空间的占用,进而得出整个系统运行期间的JVM内存运转模型。

在得到这个JVM内存运转模型后,我们需要在系统上线前选择一个合适的机器配置,包括所需的内存大小以及为JVM堆内存空间分配合理的大小。这实际上是一项非常基本的技能,因为对于大型互联网公司的工程师来说,每次上线新系统都可能面临巨大的访问压力。

因此,掌握如何合理预估内存压力并选择相应的机器配置以及分配合适的内存大小是至关重要的。希望大家能够熟练掌握这一技能。

9.2、探究不合理内存设置引发的灾难故事

在上一篇文章中,我们讨论了一个正面的例子,即如何合理地设置内存大小。今天,我们将讨论一个反面的不合理设置内存大小导致的问题。

为了便于大家理解,我们仍然以支付系统作为案例来说明,其实思路是一样的。假设我们现在有一个前提,就是支付系统因为没有经过合理的内存预估,所以直接选择了一台2核4G的虚拟机来部署线上系统,而且只使用了一个机器。

然后,线上JVM给的堆内存大小,仅仅只有1G。扣除老年代之后,新生代实际上只有几百MB的内存空间。大家看下图。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无法无天过路客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值