jvm堆大小配置建议

复用君
• 阅读 3166

选择什么样的大小没有一个硬性的或简单的规则(不过你需要确保设置的大小是机器可以支持的)。

一个经验法则是完成Full GC后,应该释放出70%的空间(30%的空间仍然占用)。

为了衡量这个结果,你可以持续运行应用程序,直到其到达稳定态配置:这时它已经载入了需要缓存的所有对象,或者已经创建了最多的客户端连接数,诸如此类。

之后,使用jconsole连接应用程序,强制进行Full GC,观察Full GC结束后还有多少内存被占用(此外,对于Throughput垃圾收集器,如果有日志的话,你可以通过查询GC日志得到对应的数据)。

点赞
收藏
评论区
推荐文章
秋招面试我去了拼多多,直接被问JVM&GC底层原理和算法,我吊打面试官
(https://shimo.im/docs/9GTP6XrJg9J88cJD/)JVM常用参数设置积累c堆的初始值,默认物理内存的1/64Xms:堆的最大值,默认物理内存的1/4Xmx:年轻代大小「在整个堆内存大小确定的情况下,增大年轻代将会减小年老代,反之亦然。此值关系到JVM垃圾回收,对系统性能影响较大,官方推荐配置为整个堆大小的3/8」X
Wesley13 Wesley13
3年前
java的接口为什么不能实例化
java的接口为什么不能实例化呢?首先,我们需要明白实例化的含义。实例化实际意义是在jvm的堆中开辟出一块内存空间,比如StudentsnewStudent();此处声明Student对象s,并且实例化一个Student对象,实则是在堆中开辟出一块空间来存放Student对象,s则是指向这块空间,也就是内存中的一块地址。这块地址中所存放的值就是我们
分布式id如何生成
1.UUID生成通过网卡、时间、随机数来保证生成的唯一的字符串。优点:(1)本地生成,生成简单(2)速度快(3)高可用;缺点:(1)无序,如果存入mysq,影响B的操作性能,因为B树是需要排序的;(2)占用空间较大(36个
Stella981 Stella981
3年前
JVM调优总结(2):一些概念(下)
Java对象的大小基本数据的类型的大小是固定的,这里就不多说了。对于非基本类型的Java对象,其大小就值得商榷。在Java中,一个空Object对象的大小是8byte,这个大小只是保存堆中一个没有任何属性的对象的大小。看下面语句:ObjectobnewObject();有了Object对象的
Stella981 Stella981
3年前
MongoDB oplog 深入剖析
MongoDB的Replication是通过一个日志来存储写操作的,这个日志就叫做oplog。在默认情况下,oplog分配的是5%的空闲磁盘空间。通常而言,这是一种合理的设置。可以通过mongodoplogSize来改变oplog的日志大小。oplog是cappedcollection,因为oplog的特点(不能太多把磁盘填满了,固定大小)需要
Stella981 Stella981
3年前
Confluence 导出为 PDF 格式
使用Confluence的空间导出功能,你可以将多个页面或者整个Confluence站点转换为PDF文件。希望使用空间导出功能,你需要导出空间(ExportSpace)权限。请查看指派空间权限指南。希望导出一个空间或者选择的页面为PDF:进入空间然后在边栏中选择选择空间工具内容工具(
Wesley13 Wesley13
3年前
MySQL如何判别InnoDB表是独立表空间还是共享表空间
InnoDB采用按表空间(tablespace)的方式进行存储数据,默认配置情况下会有一个初始大小为10MB,名字为ibdata1的文件,该文件就是默认的表空间文件(tablespcefile),用户可以通过参数innodb\_data\_file\_path对其进行设置,可以有多个数据文件,如果没有设置innodb\_file\_per\_tab
Stella981 Stella981
3年前
JVM 参数学习
一、JVM1、JVM产生GC的位置Eden(新生代)MinorGC算法(复制)Oldtenure(老年代) Major(Full)GC(整理压缩)算法2、JVM堆(Heap)内存大小参数\Xmn新生代8:1:1比例\Xms设置初始化堆内存大小 \Xmx设置堆内存最大大小 产生java.lang.
Stella981 Stella981
3年前
JVM优化之
XmnXmsXmxXss有什么区别Xmn、Xms、Xmx、Xss都是JVM对内存的配置参数,我们可以根据不同需要区修改这些参数,以达到运行程序的最好效果。\Xms堆内存的最小大小,默认为物理内存的1/64\Xmx堆内存的最大大小,默认为物理内存的1/4\Xmn堆内新生代的大小。通过这个值也可以得到老
Stella981 Stella981
3年前
JVM参数及调优
调优基本概念在调整JVM性能时,通常有三个组件需要考虑:1.堆大小调整2.垃圾收集器调整3.JIT编译器大多数调优选项都与调整堆大小和选择合适的垃圾收集器有关,JIT编译器对性能也有很大影响,但很少需要对其进行调优,尤其是针对较新版本的JVM。通常,在进行Java程序调优的时候,会重点关注两个主要指标:响应
Stella981 Stella981
3年前
Intellij IDEA配置Maven(内置Maven和修改本地仓库地址和阿里云中央仓库)
一.更改说明1.IntellijIDEA是有自己的Maven插件的,我们只需要配置一下就可以2.默认仓库位置为C:\\Users\\账户.m2\\repository,如果不更改仓库就会占用C盘空间,反正我的使用没多久仓库就是几个G大小了。二.配置说明1.FileSettings(Setting