我把堆的最大的内存改大一点,改到512M,你们可以看看效果,堆的最大内存改成512,你们说一下,我把堆的最大值改成512,但是初始值还是32M,那启动的时候垃圾回收次数至少几次,猜也猜得出来,刚才我们有几次,可以思考一下,6次是不是,那这时候至少是在5,6次左右的样子,我说过的,垃圾回收次数和最大的堆内存没有关系,是和你的初始值有关系的,在我申请内存的情况下,慢慢地去申请内存,所以刚开始和最大内存没有关系的,最大内存主要是做申请内存的,核心是根据初始内存,然后我来运行一遍-XX:+PrintGCDetails -Xmx512M -Xms32M
-XX:+HeapDumpOnOutOfMemoryError
-XX:+UseSerialGC
-XX:PermSize=32M

这个时候我们就可以统计一个道理出来,统计什么道理,最大堆内存改为512M了,但是他的垃圾回收次数,为什么还是没有变呢,这是为什么原因,记住一点,垃圾回收次数和设置堆最大内存无关的,只和堆初始内存大小有关系,这个我们可以知道一下,GC回收次数我们可以统计出来,是6次,吞吐量我们还不知道,我们看一下吞吐量是多少,你们大致可以猜一下,我现在设置512M,范围应该在多少,估算一下,可以去猜,这个没关系的,在多少范围之内,猜错了没关系的,5000左右,你们看效果差不了多少,看效果你们就知道,我们讲一下,我们吞吐量还不知道,这个时候我们怎么办呢,把它清空掉,运行,这个时候有没有做垃圾回收,是不是也有一次,这个时候我再访问一遍,是不是也做了一次GC回收,那么在这边你们看一下效果

还是5141,我们记一下,5141,你们再看一下我们这边的,5114,差别大不大,你们自己说大不大,根本不大,这个时候我们知道一个结论出来,这个堆的初始值非常非常的核心,为什么呢,垃圾回收次数和堆的最大内存大小无关,只和堆的初始大小有关系的,这一点非常非常重要,为什么我之前说非常多的一句话就是,一定要把堆的初始值和最大值要设成一致,初始内存会影响到吞吐量的,初始内存会影响吞吐量
扩大堆的内存
-XX:+PrintGCDetails -Xmx512M -Xms32M
-XX:+HeapDumpOnOutOfMemoryError
-XX:+UseSerialGC
-XX:PermSize=32MGC 回收次数6次 吞吐量5141
结论:垃圾回收次数和设置最大堆内存大小无关,只和初始内存有关系。
初始内存会影响吞吐量。

测试串行回收与堆初始值有关系02相关推荐

  1. 测试串行回收与堆初始值有关系01

    吞吐量到底是什么意思啊,我们开始是实战的做调优了,首先吞吐量是什么意思呢,你们可以找到一个文档,它会专门有一个测试报告,Average是平均响应的时间,响应时间是21秒,我们主要是看这个数字Throu ...

  2. 从串行线程封闭到对象池、线程池

    今天讲一个牛逼而实用的概念,串行线程封闭.对象池是串行线程封闭的典型应用场景:线程池糅合了对象池技术,但核心实现不依赖于对象池,很容易产生误会. 本文从串行线程封闭和对象池入手,最后通过源码分析线程池 ...

  3. 快速复习51单片机的外部中断、计数/定时器中断和串行口中断,加代码实现

    目录 1.中断系统的概念 1.1中断的概念 1.2中断系统的概念 1.3中断系统的优点 1.4我们要说的三种中断源 2.外部中断 2.1 外部中断0 代码示范 2.2 外部中断 分析 3.计数/定时器 ...

  4. Activiti并行网关和串行网关区别

    转载出处来自分享牛http://blog.csdn.net/qq_30739519) Activiti多实例任务有并行.串行区分. 并行代表同时进行,如把任务分给5个人来处理,这5个人同时会收到任务, ...

  5. php 串行化数据,PHP中的串行化变量和序列化对象

    串行化大概就是把一些变量转化成为字符串的字节流的形式,这样比较容易传输.存储.当然,关是传输存储没有什么,关键是变成串的形式以后还能够转化回来,而且能够保持原来数据的结构. 在PHP中有多串行化处理的 ...

  6. JS Boolean 初始值

    JS  Boolean 初始值 Boolean 对象如果逻辑对象无初始值或者其值为 0.-0.null."".false.undefined 或者 NaN,那么对象的值为 fals ...

  7. 垃圾回收器之串行、吞吐量优先、响应时间优先的的垃圾回收器

    4. 垃圾回收器 本篇讲述了串行.吞吐量优先.响应时间优先的垃圾回收器,关于自从JDK9 开始默认的 G1 垃圾回收器会在下篇文章讲述. 串行 单线程 堆内存较小,适合个人电脑 吞吐量优先 多线程 堆 ...

  8. java垃圾回收机制串行_Java垃圾回收机制

    Java语言是一门自动内存管理的语言,不再需要的对象可以通过垃圾回收自动进行内存释放. Java运行时内存区域划分 JVM将Java程序运行时内存区域划分成以下几个部分: 程序计数器(Program ...

  9. 串行测试 并行测试_如何通过CircleCI测试并行性增加构建时间

    串行测试 并行测试 by Karel Rochelt 卡雷尔·罗切尔特(Karel Rochelt) 如何通过CircleCI测试并行性增加构建时间 (How to boost build time ...

最新文章

  1. 第四周项目五-用递归方法求解(求1*3*5*...*n的递归式)
  2. 寄存器(内存访问)---汇编学习笔记
  3. Dockerfile构建nginx镜像
  4. 常见的 Error 和 Exception
  5. python多线程详解_Python多线程详解
  6. 加速前进!华为已在全球多地注册“鸿蒙”商标
  7. [SDOI2011]工作安排 BZOJ2245
  8. stm32f103振镜_基于振镜扫描的生物芯片荧光信号光强校正
  9. httpd2.4.9主配置文件参数详解
  10. 「随机化快排」期望运行时间证明
  11. 口袋奇兵:在线翻译场景试点 Serverless 技术历程
  12. 《动手学深度学习》(PyTorch版)代码注释 - 3 【Softmaxs_regression_with_zero】
  13. SAS9.4更新sid,有效期至2022年11月30日
  14. 宣传文本html,优秀的宣传语(精选50句)
  15. Java面试题——基础篇二
  16. 神经网络的编程基础(转自吴恩达)
  17. activiti的initiator用法
  18. 微信小程序实现身份证识别功能
  19. 大学计算机实验六文件管理与磁盘恢复,虚拟实验:文件管理与磁盘恢复.pdf
  20. 矩阵压缩降维动态规划递推【P1719 最大加权矩形】

热门文章

  1. 你写的前端到底用没用到这些
  2. 【转】Source Insight 有用设置配置
  3. sharepoint数据库研究
  4. 关于sharepoint 里面的时间和Moss对象模型取出来的时间不一致问题
  5. DriveInfo类取得计算机的磁盘信息
  6. 【Spring学习】Spring简介
  7. mysql三:表操作
  8. 把日出拍成大片的手机!大光圈+黑白彩色双摄到底有多强?
  9. python 字典操作
  10. 修复cocos2dx的Label,WP8下不能换行的问题