JVM调优 内存调优实践

本文详细介绍了JVM内存调优的实战测试,通过10-50并发线程和50000请求量的性能变化,探讨了堆内存、年轻代调整对吞吐量和响应时间的影响,并提供了优化方案,涉及GC策略、内存参数配置和常见问题排查。

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


这篇文章通过一个简单的案例来向大家介绍一下几种JVM内存调优方式,希望大家可以通过实践将理论知识形成一个闭环,纸上谈兵是最没有意义的

一、测试案例

该接口 随机产生不同大小的对象,最大4M

/**
     * 内存调优测试
     * @return
     */
    @GetMapping("/tuningTest")
    public String tuningTest(){
        List<Byte[]> temp = new ArrayList<Byte[]>();
        // 随机产生不同大小的对象,最大4MB
        int i = new Random().nextInt(8)+1;
        Byte[] bytes = new Byte[1024 * 512 * i];
        temp.add(bytes);
        return "Success";
    }

二、测试过程

首先最大堆内存设置800M,初始堆大小也是800M,测试不同并发线程相同请求量的吞吐量以及相应时间

1. 10并发线程/50000请求量 结果(吞吐量:531 平均响应时间:17)

在这里插入图片描述
在这里插入图片描述

2.20并发线程/50000请求量 结果(吞吐量:566平均响应时间:39)

在这里插入图片描述

在这里插入图片描述

3.40并发线程/50000请求量 结果(吞吐量:530平均响应时间:78)

在这里插入图片描述
在这里插入图片描述

4.50并发线程/50000请求量 结果(吞吐量:516平均响应时间:90)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值