`
BucketLi
  • 浏览: 197278 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
博客专栏
5a76a659-f8e6-3bf3-b39a-8ae8f7a0f9d9
Percolator与分布...
浏览量:5716
社区版块
存档分类
最新评论

java虚拟机基础学习以及有用的tips

 
阅读更多
看了一个ppt,感觉不错.linux部分已经总结在了<Linux的一些有用命令>这篇博文里了.这篇主要tips下jvm的一些基础知识点和实际设置点.








Java内存问题的两个主要发生区段:
1.Java内存--包括heap堆内存和permanent区
2.本地内存--包括JVM进程内存和java使用的第三方本地代码
Java内存不足:
1.Java堆内存heap不足,无法再分配新对象或内存块
2.permanent区内存不足,无法再加载类到内存中
本地内存不足:
1.物理内存不够,无法再得到内存
2.第三方本地代码有内存泄漏的Bug,例如oracle oci driver本地代码
  JVM的JIT或者JVM本身的Bug


Web应用服务器,主要是load变高。
Load高主要是资源不够导致,比如数据库连接池不够。
1 可以通过 top 和 vmstat 查看load状况
2 通过ps -eLf | grep java | wc –l 统计java线程
  通过ps -eLf | grep httpd | wc –l 统计 apache线程
  这样可以判断是否是机器在超负荷运转。  也可通过日志大小判断。
3 通过filter日志判断系统慢在什么地方。
4 通过debug日志判断cache ,数据库或者依赖的其他系统是否正常。
5 通过dump 线程查看线程都在干什么。
6 通过jstat 查看java gc状况。
7 通过 dump内存 查看java 内存是否存在泄漏。
8 通过sar 看看机器历史记录有助问题排查。



  • 大小: 90.2 KB
  • 大小: 73.4 KB
  • 大小: 89 KB
分享到:
评论

相关推荐

    java学习流程java基础语法学习

    Java学习Tips *掌握类和对象的概念是学习Java的关键。 *学习面向对象编程需要掌握Java语言的三小特性:封装、继承、多态。 *学习应用编程需要基于面向对象编程的基础上。 * Java基础知识点都是学习Java的基础,因此...

    1000 Java Tips

    7. **JVM内存管理**:理解Java虚拟机(JVM)的工作原理,特别是垃圾收集和内存区域,如堆内存、栈内存、方法区和本地方法栈,有助于优化程序性能和避免内存泄漏。 8. **反射机制**:Java的反射机制允许程序在运行时...

    500 Java Tips

    12. **JVM内部原理**:探讨Java虚拟机的工作方式,包括类加载机制、内存模型和性能调优。 13. **设计模式**:介绍常见的设计模式,如单例、工厂、观察者、装饰器模式等,以及如何在实际项目中应用。 14. **Spring...

    330 java tips

    - **平台独立性**:Java程序可以在任何安装了Java虚拟机(JVM)的操作系统上运行,实现了“一次编写,到处运行”的理念。 - **自动垃圾回收**:Java提供了自动内存管理机制,程序员无需手动释放内存,这大大减少了...

    JCreator.java入门级变成软件

    在开始使用JCreator之前,用户需要注意的是,必须先安装Java Development Kit(JDK),因为JCreator本身并不包含JVM(Java虚拟机)或编译器,它依赖于JDK来运行和编译Java程序。 在提供的文件列表中,我们能看到...

    tips

    12. **Java虚拟机(JVM)**:JVM是Java程序运行的平台,负责解析字节码并执行。了解JVM的工作原理,如垃圾收集机制、内存模型,对优化程序性能至关重要。 这份名为"tips-main"的资源可能包含了上述部分或全部内容的...

    robotium测试很好的教程

    Instrumentation是Android自动化测试框架的基础,它允许在Java虚拟机加载类时改变类的字节码或类classpath。利用Instrumentation可以在方法执行前后加入代码来测量执行时间,这样就可以对Java代码进行度量。这种能力...

    2008年sun深圳站培训资料

    - **JConsole**: 提供了实时监控Java虚拟机及其上运行的应用程序的功能,包括内存使用情况、线程状态等。 - **诊断输出 (Diagnostic Output)** - `-verbose:gc`: 输出详细的垃圾回收日志。 - `-XX:+PrintGCDetails...

Global site tag (gtag.js) - Google Analytics