zoukankan      html  css  js  c++  java
  • jvm调优心得

    首先,jvm调优,包括两种情况,一种是系统发生了OOM异常,这种情况,导出堆的dump日志,然后用MAT技术分析即可。一般MAT会自动分析出问题,查找代码,进行修改即可。

    另一种情况是,没有发生OOM,但是,要对jvm进行调优,使jvm的使用达到最优。

    这种情况,就需要用top命令,查出占用CPU或内存过高的java进程。

    然后,用jstack命令查询线程情况,一个是查询是否有死锁。另一个是注意处于wating和blocking状态的线程,看一下是哪个线程阻塞了。

    如果不是线程的问题,就用jstat命令查询GC发生的时间和频率,以及新生代和老年代剩余空间,以此来判断是否需要优化新生代和老年代的内存。

    再有一种优化的情况就是,考虑业务场景,主动对jvm进行优化,比如秒杀系统,就要提前规划好,新生代大概多少M对象,老年代大概多少M对象,然后适当增大新生代空间,来减少老年代GC频率和避免大对象直接进入老年代等。

  • 相关阅读:
    设计模式:备忘录模式??
    jQuery总结
    MYSQL(三)
    MYSQL(二)
    MYSQL(一)
    Web.xml配置详解
    Spring-JDBC通用Dao
    网络七层协议的形象说明
    网络编程概念
    JSP 9 大内置对象详解
  • 原文地址:https://www.cnblogs.com/hongyuansu/p/13897805.html
Copyright © 2011-2022 走看看