首页 > 其他分享 >JVM学习记录五(JVM调优)

JVM学习记录五(JVM调优)

时间:2023-11-24 11:31:45浏览次数:27  
标签:java JVM 记录 jar 回收 调优 线程 垃圾 设置

参数设置

1.在tomcat中的设置,修改tomcat下/bin/catalina.sh中设置

JVM学习记录五(JVM调优)_jvm

2.在jar启动时命令设置

nohup java -Xms512m -Xmx1024m -jar -demo.jar &

参数调优

设置堆空间大小:一般默认大小设置为物理内存的1/64,最大大小设置为    1/4,具体情况还是要根据当前主机的的实际使用情况, 是不是还有其他应用程序,避免太小导致GC太频繁,stw也会频繁,太大导致fullgc的时候stw的时间太长

虚拟机栈设置:虚拟机栈适用于程序运行时为每个线程分配空间,默认是1M,一般是256K就行,减少线程的堆栈可以产生更多的现成,不过不能太小, 要不会出现栈内存溢出

参数: -Xss 256k

年轻代eden区和两个survivor区大小设置 :这个一般不做调整,默认比例是8:1:1,调整比例大小影响的是ygc的频率

参数: -XXSurvivorRatio=8 表示 survivor:eden=2:8

年轻代晋升老年代的阈值:默认值为15,可以调整小一些,最大不超过15

设置垃圾回收器:

之前说过JDK8 的默认垃圾回收器是并行垃圾回收器,采用复制算法与标记-整理算法,JDK9及以后使用的是G1回收器,采用的是复制算法

参数: -XX:+UseG1GC

调优工具:

命令:

jstack:查看线程内的进程信息 命令:jstack pid

JVM学习记录五(JVM调优)_垃圾回收器_02

      jmap命令 jmap -heap pid 显示java堆内信息

JVM学习记录五(JVM调优)_垃圾回收器_03

   命令 下载某一时间的快照  jmap  -dump:format=b,file=heap.hprof pid

jstat: jvm的检测工具,可以看到一些垃圾回收的信息,类加载,新生代统计信息等

JVM学习记录五(JVM调优)_jvm_04

垃圾回收工具:

jconsole用于对java 的内存、线程、类的监控

可以直接在java的安装目录下/bin目录,打开jconsole.exe  

JVM学习记录五(JVM调优)_垃圾回收器_05

visualVM。一样,也是可以在JDK安装目录下/bin的jvisualvm.exe 就行

JVM学习记录五(JVM调优)_jvm_06



标签:java,JVM,记录,jar,回收,调优,线程,垃圾,设置
From: https://blog.51cto.com/u_15702726/8547040

相关文章

  • C# 中增加一个使用StopWatch记录方法执行时间的通用方法
    目录一背景二源码2.1注意事项三使用方法一背景在很多时候我们在进行代码排查的时候需要在日志中记录代码的执行时间从而方便我们进行代码运行效率的执行,我们在日志中准确记录方法的执行时间,这样方便我们进行代码的排查,下面分享一个我们常用的记录方式,方便使用,而且最重要的......
  • Python使用sys.excepthook统一处理异常,并将异常信息记录到日志中
    importsysimporttimeimporttracebackfromdatetimeimportdatetimefromseleniumimportwebdriverfromselenium.webdriver.common.byimportByfromselenium.webdriver.supportimportexpected_conditionsasECfromselenium.webdriver.support.uiimportWeb......
  • 记录今天最后一个bug
    重大发现:使用axios时,当路径下面出现下划线时,一般路径就没问题如果没出现下划线,记得去看看路径出错了没背景:前端vue中使用axios时路径写错,少加了“//”,导致找bug找了半小时,nnd 错误案例 正确例子重大发现:使用axios时,当路径下面出现下划线时,一般路径就没问题如果没出现......
  • 【RPA学习天地】RPA爬取网页数据典型案例解析——芯片价格查询记录自动化
    关于RPA学习天地www.rpa-learning.comRPA学习天地致力于各大主流RPA厂商的产品使用培训,自2021年起,我们推出了各类RPA开发者培训课程,两年的时间已经为超过千位的RPA学员的成长保驾护航,学员成员涵盖金融、制造业、电商与零售业、物流业以及高科技行业等领域。RPA学习天地始终紧跟行业......
  • 【问题记录】【IDEA工具】升级了个版本- -启动报错 com.intellij.ide.util.Properties
    1 启动报错Causedby:java.lang.ClassNotFoundException:com.intellij.ide.util.PropertiesComponentImplPluginClassLoader(plugin=PluginDescriptor(name=BetterIntelliJ,id=org.example.BetterIntelliJ,descriptorPath=plugin.xml,path=~/Library/ApplicationSuppor......
  • 记录--为什么没有人能讲清楚 BFC?
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助一、你看得懂权威的解释吗?1.CSS规范中对BFC的描述CSS规范(英文)|中文翻译浮动,绝对定位的元素,非块盒的块容器(例如inline-blocks,table-cells和table-captions),以及’overflow’不为’visible’的块盒(当该......
  • mixpanel 无法正确记录 可以试试是不是代理问题
      加入用户规则过滤不走代理的url 修改pac文件的方式设置不走代理的地址 ......
  • 搭建 MongoDB (v6.0) 副本集记录
    副本集概述副本集(ReplicaSet)是一组带有故障转移的MongoDB实例组成的集群,由一个主(Primary)服务器和多个从(Secondary)服务器构成。通过Replication,将数据的更新由Primary推送到其他实例上,在一定的延迟之后,每个MongoDB实例维护相同的数据集副本。通过维护冗余的数据库副本,能够实......
  • 电脑网站支付报错“验签出错,建议检查签名字符串或私钥与应用公钥是否匹配”问题解决记
    在对接支付宝电脑网站支付的时候,遇到如下报错:“错误代码invalid-signature错误原因:验签出错,建议检查签名字符串或签名私钥与应用公钥是否匹配”。但展示的报错内容跟实际原因有所出入(在下文中有解答),这里记录下问题的解决排查过程。问题复现在对接电脑网站支付时,生成form表单......
  • Mybatis保存多记录,导致SQL过长,保存失败,按指定次数切分,多次保存。
     privatestaticfinalIntegerWORKITEM_MAX_NUMBER=200;privateintsavePbhProblemworkitem(List<ProblemWorkitemVm>problemworkitem){try{intcount=0;intlimit=countStep(problemworkitem.size(),WORKI......