`

linux下分析Java程序内存汇总

    博客分类:
  • Java
 
阅读更多

http://blog.csdn.net/zlzlei/article/details/46472729

 

 

 

使用pmap查看进程内存

运行命令

使用pmap可以查看某一个进程(非java的也可以)的内存使用使用情况,
命令格式:
pmap 进程id

示例说明

例如运行:
pmap 12358
显示结果如下图(内容较多, 分成几张图说明):
内容开始部分
内容结束部分
上图中,
第一列,内存块起始地址
第二列,占用内存大小
第三列,内存权限
第四列,内存名称,anon表示动态分配的内存,stack表示栈内存
最后一行,占用内存总大小,请注意,此处为虚拟内存大小,占用的物理内存大小可以通过top查看
 

使用jmap查看Java进程对象使用情况

运行命令

使用jmap可以查看某个Java进程中每个对象有多少个实例,占用多少内存,
命令格式:
jmap -histo 进程id

示例说明

例如运行:
jmap -histo  12538
显示结果如下图(内容较多, 分成几张图说明):
内容开始部分
内容结束部分
上图中:
第一列,序号,无实际意义
第二列,对象实例数量
第三列,对象实例占用总内存数,单位:字节
第四列,对象实例名称
最后一行,总实例数量与总内存占用数
 
另,部分示例说明(还没弄明白,后续补充):
[C,
[B,
[I,
[J,
[L,

使用jstat查看Java内存分布及回收情况

直接看这个帖子:
http://blog.csdn.net/zlzlei/article/details/46471627
 

补充

发现一个不错的jmap,jstat等java分析工具的博客,如下:
http://blog.csdn.net/fenglibing/article/details/6411999
 
分享到:
评论

相关推荐

    JAVA开源框架-汇总.doc

    - **概述**:JNA (Java Native Access) 是一个允许Java程序直接调用本地系统库的开源框架。 - **主要特性**: - 不需要编写任何JNI (Java Native Interface) 代码即可访问本地库。 - 支持Windows、Linux、Mac OS等...

    Linux性能分析基础

    Linux性能分析是优化系统效率和解决性能问题的关键技术。它主要关注系统运行的各个层面,包括硬件资源、操作系统、服务器软件、开发平台、中间件软件以及应用程序。通过对这些环节进行深入分析,我们可以找出系统...

    Linux 操作系统 汇总

    - **软件开发**:Linux下的编程环境,包括C/C++、Python、Java等语言的开发工具和调试技巧。 - **自动化工具**:Ansible、Chef、Puppet等用于自动化运维的工具介绍。 - **性能调优**:CPU、内存、磁盘I/O等方面的...

    Jconsole监控Java应用

    要使用Jconsole对Java应用程序进行监控,需要在Linux机器上安装JDK,并配置JDK的环境变量。此外,还需要在本地安装图形化连接工具,如Xmanager。 操作步骤 1. 本地启动Xmanager中的Xmanager - Passive工具,启动后...

    Andorid JAVA IOS 全套汇总

    Android系统提供了丰富的应用程序框架,允许开发者使用Java语言编写应用程序,通过Google Play商店分发给全球用户。 在Android开发中,学习内容包括但不限于: 1. Android SDK:开发者需要下载并安装SDK,它包含了...

    M哥linux2016版视频课堂文档汇总

    《M哥Linux2016版视频课堂文档汇总》是一个全面涵盖Linux基础知识、运维技能以及相关工具的教程集合。这份文档旨在帮助学习者从初级到高级逐步掌握Linux系统的使用和管理,同时也涉及到虚拟化技术、云计算、大数据...

    Java 全栈知识点问题汇总(15).pdf

    5. **LILO**:LILO(Linux Loader)是早期Linux系统常用的引导加载程序,用于加载Linux操作系统到内存中启动。 6. **交换空间**:交换空间是Linux中的一种虚拟内存,当物理内存不足时,系统会将部分数据暂时存储到...

    30种java技术框架方案架构图汇总汇编.pdf

    2. **JVM架构**:Java虚拟机(JVM)是Java程序的运行环境,包括类装载器、运行时数据区、执行引擎、本地方法接口和本地方法库。理解JVM内存模型(如堆、栈、方法区等)和垃圾回收机制对于性能调优至关重要。 3. **...

    tomcat的linux的7 8 9版本汇总

    在Linux操作系统上部署Tomcat,可以充分利用其稳定性和高效性,尤其适合那些需要高性能、高并发的Java Web应用程序。 【标签】"Tomcat",这是这个压缩包的关键所在,强调了与Java应用服务器相关的技术知识。Tomcat ...

    Java面试八股文2023最新版

    Java面试八股文是准备Java面试的关键资源,涵盖了广泛的Java技术领域,包括基础概念、框架、并发、JVM以及软技能。以下是一些关键知识点的详细说明: **基础篇** 1. **Java语言特点**:Java是跨平台的、面向对象的...

    30种java技术框架-方案架构图汇总.pdf

    2. **JVM架构**:Java虚拟机是Java程序运行的基础,它包括类装载器、运行数据区、执行引擎、本地方法接口和本地方法库。了解JVM内存模型(如堆、栈、方法区等)对于进行性能调优和避免内存泄漏至关重要。 3. **Java...

    java技术架构图汇总.doc.pdf

    11. **JDK(Java Development Kit)架构**:JDK包含了开发和运行Java程序所需的工具和库,包括JRE(Java Runtime Environment)以及编译器、调试器和打包工具等。 12. **浏览器工作原理**:浏览器接收用户请求,...

    java初级面试题汇总(附答案).docx

    JVM 将字节码转换为特定平台的机器指令,因此 Java 程序可以在不同的操作系统上执行,如 Windows、Linux、Mac OS 等,而无需重新编译。Java 类装载器也起到了关键作用,它动态加载类到 JVM 中,使得程序可以适应不同...

    java技术架构图汇总.doc.docx

    1. **JVM(Java Virtual Machine)架构**:JVM是Java程序运行的基础,它负责解析.class文件并执行字节码。JVM包括类加载器、运行时数据区、执行引擎、本地方法接口和本地方法库。类加载器负责加载类文件,运行时数据...

    Java 组件和框架汇总

    在数据库方面,H2是一个纯Java的嵌入式数据库,适合测试和小型应用程序。SQLite是一个轻量级的、无服务器的数据库,适用于移动设备和本地存储。MySQL是世界上最受欢迎的关系型数据库管理系统,而Oracle则为企业级...

    android与java的知识点

    Java程序编译为JVM可执行的.class文件,运行在Java虚拟机上。 7. **权限管理**:Android应用需要声明和获取权限才能访问某些系统资源,而Java应用通常没有这样的限制,除非是在受限制的环境中(如JavaCard)。 ...

    面试问题汇总

    ### Java面试问题汇总知识点解析 #### 一、面向对象的特征 面向对象编程(OOP)是Java编程语言的核心思想之一,主要包括以下四个方面: 1. **抽象**:抽象是指在编程时仅关注对象的关键属性和行为,忽略不重要的细节...

    八股文知识点汇总——Java面试题指南

    - JDK(Java Development Kit):包含了开发和调试Java程序所需的工具,如Javac编译器、Javadoc文档生成器等。 - JRE(Java Runtime Environment):仅包含运行Java程序所需的环境,包括Java虚拟机(JVM)和Java...

    Java面试题总汇(最新).pdf

    Java作为一门广泛使用的编程语言,其面试题涵盖了多个核心领域,包括数据结构与算法、Java基础知识、多线程与并发、Linux使用与问题分析、框架、数据库相关、网络协议和网络编程、微服务以及JVM。以下是这些领域的...

    方案设计架构图汇总情况-java技术框架.doc

    接着,JVM(Java Virtual Machine)架构是Java程序运行的基础。它包括类装载器、运行数据区、执行引擎、本地方法接口和本地方法库等组件。JVM使得Java代码能在任何支持JVM的平台上运行,实现了“一次编写,到处运行...

Global site tag (gtag.js) - Google Analytics