一:Java技术体系模块图 二:JVM内存区域模型 1.方法区 也称”永久代” 、“非堆”, 它用于存储虚拟机加载的类信息、常量、静态变量、是各个线程共享的内存区域。默认最小值为16MB,最大值为64MB,可以通过-XX:PermSize 和 -XX:MaxPermSize 参数限制方法区的大小。 ...
分类:
其他好文 时间:
2017-02-21 00:59:35
阅读次数:
254
随笔-114 文章-0 评论-100 随笔-114 文章-0 评论-100 随笔-114 文章-0 评论-100 随笔-114 文章-0 评论-100 [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等) 如若转载请注明出处: http:// ...
分类:
编程语言 时间:
2017-02-17 13:54:41
阅读次数:
248
JVM性能调优JVM垃圾回收与性能调优总结JVM调优的几种策略一、JVM内存模型及垃圾收集算法1.根据Java虚拟机规范,JVM将内存划分为:New(年轻代)Tenured(年老代)永久代(Perm)其中New和Tenured属于堆内存,堆内存会从JVM启动参数(-Xmx:3G)指定的内存中分配,Perm不属于堆内..
分类:
其他好文 时间:
2017-01-09 16:51:46
阅读次数:
182
System.gc()可以手动出发full gc -XX:+DisableExplicitGC 可以忽略System.gc() 类的元数据: Java 8之前,元数据被分配在所谓的永久代,java 8开始,元数据被分配在native memory。 -XX:MaxMetaspaceSize 可以指定 ...
分类:
其他好文 时间:
2016-12-17 14:01:18
阅读次数:
147
1.1 编写目的 为了方便大家以后发现进程假死的时候能够正常的分析并且第一时间保留现场快照。1.2编写背景最近服务器发现tomcat的应用会偶尔出现无法访问的情况。经过一段时间的观察最近又发现有台tomcat的应用出现了无法访问情况。简单描述下该台tomcat当时具体的表现:客户端请求没有响应,查看 ...
分类:
其他好文 时间:
2016-12-12 14:32:17
阅读次数:
236
性能测试排查定位问题,分析调优过程中,会遇到要分析gc日志,人肉分析gc日志有时比较困难,相关图形化或命令行工具可以有效地帮助辅助分析。 Gc日志参数 通过在tomcat启动脚本中添加相关参数生成gc日志 -verbose.gc开关可显示GC的操作内容。打开它,可以显示最忙和最空闲收集行为发生的时间 ...
分类:
其他好文 时间:
2016-11-23 12:05:07
阅读次数:
339
GC分代 GC的英文全拼是Garbage Collection,意思是垃圾收集。 Java 将堆内存分为三代来管理: - 年轻代 (Young Generation) - 年老代 (Old Generation) - 永久代 (Perm Generation) 年轻代:又分为Eden、From和To ...
分类:
编程语言 时间:
2016-11-16 01:43:21
阅读次数:
207
一:Java技术体系模块图 Java技术体系模块图 二:JVM内存区域模型 1.方法区 也称”永久代” 、“非堆”, 它用于存储虚拟机加载的类信息、常量、静态变量、是各个线程共享的内存区域。默认最小值为16MB,最大值为64MB,可以通过-XX:PermSize 和 -XX:MaxPermSize ...
分类:
编程语言 时间:
2016-11-03 18:39:38
阅读次数:
162
基本特性: 线程共享区域,存储被JVM加载的类信息、常量、静态变量、即时编译器编译的代码等 堆的逻辑部分,不限定方法去内的内存位置和编译代码的管理策略,不限定实现垃圾回收 容量可不定也可动态扩展,不要求物理连续 回收主要针对常量池的回收,和类型的卸载 HotSpot虚拟机方法区: 使用永久代实现方法 ...
分类:
其他好文 时间:
2016-10-22 17:41:00
阅读次数:
139
本文为原创,根据《深入理解java虚拟机》和自己的一些理解进行整理,单纯和看其他人的博客感觉不如自己一点点的画和记录来的印象深刻。 JAVA内存模型: 判断对象是否已死(可以回收)的算法 方法区(永久代)回收的相关说明: 垃圾收集的算法: 1、标记 - 清除算法 包含标记和清除2个阶段,是最基础的算 ...
分类:
编程语言 时间:
2016-10-07 01:21:26
阅读次数:
199