JVM
zgmzyr
这个作者很懒,什么都没留下…
展开
-
jvm体系结构-方法区详解
方法区在一个jvm实例的内部,类型信息被存储在一个称为方法区的内存逻辑区中。类型信息是由类加载器在类加载时从类文件中提取出来的。类(静态)变量也存储在方法区中。 jvm实现的设计者决定了类型信息的内部表现形式。如,多字节变量在类文件是以big-endian存储的,但在加载到方法区后,其存放形式由jvm根据不同的平台来具体定义。 jvm在运行应用时要大量使用存储在方法区中的类型信息。在类型信息的表示上,设计者除了要尽可能提高应用的运行效率外,还要考虑空间问题。根据不同的需求,jvm的实现者可以在时间和空间上追转载 2010-08-10 22:56:00 · 889 阅读 · 0 评论 -
关于jvm的内存限制的问题的解决办法
转载于:http://java.chinaitlab.com/Jvm/810077.html jdk编译器对内存的支持不同,client状态和server状态不同,后者支持更大些。操作系统不同也存在不同,64位操作系统就比32位操作系统大。 测试方法:在命令行下用 java -XmxXXXXM -version 命令来进行测试,然后逐渐的增大XXXX的值,如果执行正常就表示指定的内转载 2012-07-27 19:24:28 · 793 阅读 · 0 评论 -
Java 6 JVM参数选项大全(中文版)
转载于:http://kenwublog.com/docs/java6-jvm-options-chinese-edition.htm本文是基于最新的SUN官方文档Java SE 6 Hotspot VM Options 编写的译文。主要介绍JVM中的非稳态选项及其使用说明。为了让读者明白每个选项的含义,作者在原文基础上补充了大量的资料。希望这份文档,对正在研究JVM参数的朋友有帮转载 2012-11-25 16:58:19 · 1067 阅读 · 0 评论 -
深入理解JVM内幕:从基本结构到Java 7新特性
转载于:http://www.csdn.net/article/2012-12-05/2812509-Java-JVM 每个Java开发者都知道Java字节码是执行在JRE(Java Runtime Environment Java运行时环境)上的。JRE中最重要的部分是Java虚拟机(JVM),JVM负责分析和执行Java字节码。Java开发人员并不需要去关心JVM是如何运行的。在没有深转载 2012-12-05 19:11:59 · 843 阅读 · 0 评论 -
JVM实用参数(四)内存调优
转载于:http://ifeve.com/useful-jvm-flags-part-4-heap-tuning/理想的情况下,一个Java程序使用JVM的默认设置也可以运行得很好,所以一般来说,没有必要设置任何JVM参数。然而,由于一些性能问题(很不幸的是,这些问题经常出现),一些相关的JVM参数知识会是我们工作中得好伙伴。在这篇文章中,我们将介绍一些关于JVM内存管理的参数。知道并理解转载 2015-11-03 20:37:17 · 712 阅读 · 0 评论 -
JVM实用参数(八)GC日志
转载于:http://ifeve.com/useful-jvm-flags-part-8-gc-logging/本系列的最后一部分是有关垃圾收集(GC)日志的JVM参数。GC日志是一个很重要的工具,它准确记录了每一次的GC的执行时间和执行结果,通过分析GC日志可以优化堆设置和GC设置,或者改进应用程序的对象分配模式。-XX:+PrintGC参数-XX:+PrintGC(转载 2015-11-03 20:38:21 · 682 阅读 · 0 评论 -
DisableExplicitGC和Direct ByteBuffer
转载于:http://iamzhongyong.iteye.com/blog/1743718 如果在JVM 的配置中添加了DisableExplicitGC这个配置,但是同时应用中有用到了Direct ByteBuffer(例如用到了NIO框架mina),此时会由于内存问题导致OOM,之前有所了解,但是没有仔细看过,最近同事排查了一个这种问题,然后决定扫盲一下,期间重点参照撒迦转载 2015-11-03 23:57:19 · 744 阅读 · 1 评论 -
[HotSpot VM] JVM调优的"标准参数"的各种陷阱
转载于:http://hllvm.group.iteye.com/group/topic/27945%EF%BC%89%E3%80%82开个帖大家来讨论下自己遇到过的情况吧?我在顶楼举几个例子。 开这帖的目的是想让大家了解到,所谓“标准参数”是件很微妙的事情。确实有许多前辈经过多年开发积累下了许多有用的调优经验,但向他们问“标准参数”并照单全收是件危险的事情。 前辈们提供的“标转载 2015-11-04 00:03:11 · 2896 阅读 · 0 评论 -
用JDK中的 jps、jinfo、jstat、jstack、jmap、jconsole等命令对JVM,内存,线程进行分析和故障诊断
转载于:http://blog.csdn.net/chenleixing/article/details/43418521JDK提供了几个很实用的工具,如下:jinfo:观察运行中的java程序的运行环境参数:参数包括Java System属性和JVM命令行参数,java class path等信息。命令格式:jinfo 进程pidjps:用来显示本地的java进程转载 2015-11-04 20:09:11 · 1376 阅读 · 0 评论 -
JVM 深入笔记(1)内存区域是如何划分的?
转载于:http://blog.csdn.net/poechant/article/details/7289093 一个超短的前言JVM 是一个从事 Java 开发的软件工程师的修炼之路上必然要翻阅的一座山。当你了解了 Java 的基本语言特性,当你熟悉了 Java SDK 中的常用 API,当你写过一些或大或小的程序后,你就会有去了解 JVM 的需求出现。如果你现在没有这种感觉,转载 2012-02-25 12:42:07 · 590 阅读 · 0 评论 -
使用Memory Analyzer tool(MAT)分析内存泄漏
转载于:http://drizzlewalk.blog.51cto.com/2203401/568047 前言 在平时工作过程中,有时会遇到 OutOfMemoryError ,我们知道遇到 Error 一般表明程序存在着严重问题,可能是灾难性的。现在向大家引荐 Eclipse Memory Analyzer tool(MAT) 为什么用 MAT之前的观点,转载 2011-12-05 00:08:18 · 1745 阅读 · 0 评论 -
JAVA内存溢出解析
http://lz12366.javaeye.com/blog/656269原因有很多种,比如: <br /><br />1.数据量过于庞大;死循环 ;静态变量和静态方法过多;递归;无法确定是否被引用的对象; <br /><br />2.虚拟机不回收内存(内存泄漏); <br /><br /> 说白了就是程序运行要用到的内存大于虚拟机能提供的最大内存就发生内存溢出了。 内存溢出的问题要看业务和系统大小而定,对于某些系统可能内存溢出不常见,但某些系统还是很常见的解决的方法, <br /><br />一个转载 2010-08-10 22:59:00 · 612 阅读 · 0 评论 -
jvm的常量池
<br />http://lz12366.javaeye.com/blog/648827<br /> <br />在class文件中,“常量池”是最复杂也最值得关注的内容。 <br /><br />Java是一种动态连接的语言,常量池的作用非常重要,常量池中除了包含代码中所定义的各种基本类型(如int、long等等)和对象型(如String及数组)的常量值还,还包含一些以文本形式出现的符号引用,比如: <br /><br />类和接口的全限定名; <br /><br />字段的名称和描述符; <br /><转载 2010-08-10 23:00:00 · 700 阅读 · 0 评论 -
装载和初始化
http://lz12366.javaeye.com/blog/644601Java代码 Class c = Class.forName(args[0],true,off.getClass();.getClassLoader(););; Class c = Class.forName(args[0],true,off.getClass();.getClassLoader(););; 可查看API............... <br /><br />Class.for(str,true...转载 2010-08-10 23:02:00 · 830 阅读 · 0 评论 -
java栈、堆、常量池
<br />http://lz12366.javaeye.com/blog/644141<br /> <br />Java内存分配: <br /><br />1. 寄存器:我们在程序中无法控制 <br />2. 栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中 <br />3. 堆:存放用new产生的数据 <br />4. 静态域:存放在对象中用static定义的静态成员 <br />5. 常量池:存放常量 <br />6. 非RAM(随机存取存储器)存储:硬盘等永久存储空间 <b转载 2010-08-10 23:03:00 · 645 阅读 · 0 评论 -
Class文件详解 (1)
<br />http://www.moon-soft.com/doc/30364.htm<br /> <br /> <br /> <br />们都知道,Java编译器负责将.java文件编译成.class文件,class文件存储的是java字节码,与.java文件无关(只要你愿意写一个编译器,也可以将别的语言写的源代码编译成.class文件),本文准备详细解剖class文件的内部结构,并且把class文件结构读取并显示出来。<br /><br />Class文件的格式由JVM规范规定,一共有以下部分:<br转载 2010-08-10 23:04:00 · 574 阅读 · 0 评论 -
浅析dalvik虚拟机JIT技术的实现
<br />一、 说明<br />据说Android 2.2的虚拟机dalvik使用了JIT技术,使其运行速度快了5倍。dalvik解释并执行程序,JIT技术主要是对多次运行的代码进行编译,当再次调用时使用编译之后的机器码,而不是每次都解释,以节约时间。5倍是测试程序测出的值,并不是说程序运行速度也能达到5倍,这是因为测试程序有很多的重复调用和循环,而一般程序主要是顺序执行的,而且它是一边运行,一边编译,一开始的时候提速不多,所以真正运行程序速度提高不是特别明显。<br />二、 JAVA虚拟机主要的转载 2010-08-11 14:27:00 · 2011 阅读 · 0 评论 -
高级应用程序(Java虚拟机)
<br />转载于:http://hi.baidu.com/davidsternberg/blog/item/7b05eb527f111a551038c2ad.html<br /> <br />新的JavaTM 虚拟机(VMs)具有能够提高性能的特点, 并且你可以使用许多工具来提高应用程序的性能或减小一般类文件的尺寸。这种Java虚拟机的特性和工具可使你在不改变应用程序、或对应用程序仅做很小改动的情况下, 提高应用程序的性能。 <br /> Java虚拟机的特性 <br /> Java2与过去的版本相比转载 2010-08-11 14:32:00 · 912 阅读 · 0 评论 -
Java虚拟机支持的最大内存限制
转载于:http://wangdei.iteye.com/blog/204616 最近在开发Java的程序。本来我是一直很喜欢Java的内存管理的,不需要担心分配内存,只管分配,垃圾收集器自己会给你回收内存的。现在开发的程序数据量很大,为了速度快,我准备把所有的信息转载 2011-09-05 17:55:51 · 996 阅读 · 0 评论 -
一步步优化JVM一:概述、方法及需求
转载于:http://blog.csdn.net/zhoutao198712/article/details/7783038现代JVM是一个具有灵活适应各种应用能力的软件,尽管很多应用能够在JVM的默认配置下运行良好,但是有些应用还是需要优化JVM配置以达到其性能要求。由于各种各样的应用能够运行在现在JVM上面,所以大量的JVM选项可以配置来提升应用的性能。不幸的是,对一个应用转载 2016-03-31 23:38:09 · 1218 阅读 · 0 评论