jvm参数配置

323 篇文章 14 订阅
订阅专栏

一.关于JVM参数配置,有多种途径。

1.在tomcat中直接配置的

打开tomcat的安装目录, 在bin下修改catalina.bat文件

添加如下:

set “JAVA_OPTS=-Xmx300m -Xms300m -Xmn100m -XX:SurvivorRatio=8”

在这个位置:

启动tomcat即可起作用。

2.使用Myecplise,配置JVM参数

双击Tomcat,打开在如下位置,配置:

-Xmx300m
-Xms300m
-Xmn100m
-XX:SurvivorRatio=8

在如下位置即可。

然后启动项目,即可起作用。

二.标准配置:

[这里是图片003]

-Xmx300m
-Xms300m
-Xmn100m
-XX:SurvivorRatio=8

-XX:+UseG1GC
-XX:MaxTenuringThreshold=14
-XX:ParallelGCThreads=8
-XX:ConcGCThreads=8

-XX:+DisableExplicitGC

-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=d:/a.dump
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintHeapAtGC
-XX:+TraceClassLoading
-XX:+PrintClassHistogram

[这里是图片004]

进行JVM的优化的这些参数

解释如下:

[这里是图片005]

-Xmx300m       最大堆大小
-Xms300m         初始堆大小
-Xmn100m         年轻代大小
-XX:SurvivorRatio=8       Eden区与Survivor区的大小比值,设置为8,则两个Survivor区与一个Eden区的比值为2:8,一个Survivor区占整个年轻代的1/10

-XX:+UseG1GC       使用 G1 (Garbage First) 垃圾收集器
-XX:MaxTenuringThreshold=14   提升年老代的最大临界值(tenuring threshold). 默认值为 15[每次GC,增加1岁,到15岁如果还要存活,放入Old区]
-XX:ParallelGCThreads=8   设置垃圾收集器在并行阶段使用的线程数[一般设置为本机CPU线程数相等,即本机同时可以处理的个数,设置过大也没有用]
-XX:ConcGCThreads=8     并发垃圾收集器使用的线程数量

-XX:+DisableExplicitGC          禁止在启动期间显式调用System.gc()

-XX:+HeapDumpOnOutOfMemoryError OOM时导出堆到文件
-XX:HeapDumpPath=d:/a.dump    导出OOM的路径
-XX:+PrintGCDetails      打印GC详细信息
-XX:+PrintGCTimeStamps     打印CG发生的时间戳
-XX:+PrintHeapAtGC       每一次GC前和GC后,都打印堆信息
-XX:+TraceClassLoading     监控类的加载
-XX:+PrintClassHistogram       按下Ctrl+Break后,打印类的信息

[这里是图片006]

三.我们把GC分成4种类型

1. SerialGC
参数-XX:+UseSerialGC
就是Young区和old区都使用serial 垃圾回收算法,
2. ParallelGC
参数-XX:+UseParallelGC
Young区:使用Parallel scavenge 回收算法
Old 区:可以使用单线程的或者Parallel 垃圾回收算法,由 -XX:+UseParallelOldGC 来控制
3. CMS
参数-XX:+UseConcMarkSweepGC
Young区:可以使用普通的或者parallel 垃圾回收算法,由参数 -XX:+UseParNewGC来控制
Old 区:只能使用Concurrent Mark Sweep
4. G1
参数:-XX:+UseG1GC
没有young/old区

四.一些配置解释

1.选项/默认值 说明
-XX:+UseG1GC 使用 G1 (Garbage First) 垃圾收集器
-XX:MaxGCPauseMillis=n 设置最大GC停顿时间(GC pause time)指标(target). 这是一个软性指标(soft goal), JVM 会尽量去达成这个目标.
-XX:InitiatingHeapOccupancyPercent=n 启动并发GC周期时的堆内存占用百分比. G1之类的垃圾收集器用它来触发并发GC周期,基于整个堆的使用率,而不只是某一代内存的使用比. 值为 0 则表示"一直执行GC循环". 默认值为 45.
-XX:NewRatio=n 新生代与老生代(new/old generation)的大小比例(Ratio). 默认值为 2.
-XX:SurvivorRatio=n eden/survivor 空间大小的比例(Ratio). 默认值为 8.
-XX:MaxTenuringThreshold=n 提升年老代的最大临界值(tenuring threshold). 默认值为 15.
-XX:ParallelGCThreads=n 设置垃圾收集器在并行阶段使用的线程数,默认值随JVM运行的平台不同而不同.
-XX:ConcGCThreads=n 并发垃圾收集器使用的线程数量. 默认值随JVM运行的平台不同而不同.
-XX:G1ReservePercent=n 设置堆内存保留为假天花板的总量,以降低提升失败的可能性. 默认值是 10.
-XX:G1HeapRegionSize=n 使用G1时Java堆会被分为大小统一的的区(region)。此参数可以指定每个heap区的大小. 默认值将根据 heap size 算出最优解. 最小值为 1Mb, 最大值为 32Mb.

2.JVM堆大小的默认最大和最小值(参考)

操作系统及JVM类型

初始堆的大小(Xms)

最大堆的大小(Xmx)

Linux/Solaris,32位客户端

16MB

256MB

Linux/Solaris,32位服务器

64MB

取1GB和物理内存大小1/4二者中的最小值

Linux/Solaris,64位服务器

取512MB和物理内存大小1/64二者中的最小值

取32GB和物理内存大小1/4二者中的最小值

MacOS,64位服务器型JVM

64MB

取1GB和物理内存大小1/4二者中的最小值

32位Window系统,客户端型JVM

16MB

256MB

64位Window系统,客户端型JVM

64MB

1GB和物理内存大小1/4二者中的最小值

3.一般性调优办法

-Xmx 和-Xms 一般设置为一样大小,这样能稍微提高GC的运行效率,因为他/她不再需要估算堆是否需要调整大小了

JVM参数配置报错:

1.Conflicting collector combinations in option list; please refer to the release notes for the combina
报错:使用多种GC导致GC冲突

Java基础 之 JVM
Ivan Xiang
04-21 2821
JVM基础 JVM JVM是一种规范,基于这套规范的jvm平台可以通过字节码指令集及内存管理来虚构出一台计算机,任何语言符合JVM规范并编译成class文件,即可以在JVM虚拟机上运行。目前常见的JVM实现,常用的有Hotspot,openjdk,也有TaobaoVM,J9,LiquidVM,Jrockit,Microsoft VM,azul zing等,通过java -version 即可查看当前的虚拟机平台。 JVM虚拟机可以加载运行应用程序,在JVM基础上,附加核心库(core lib) ,即构
JVMJVM调优配置案例(高性能模板)
最新发布
JCoder的博客
04-15 917
这篇文章将提供一个JVM配置案例,适用于需要高性能和高稳定性的应用程序,如大型企业级应用、高流量的Web服务、大数据处理和分析任务等。
JVM参数分配详解
weixin_30892763的博客
05-29 342
开篇之前,推荐一个关于JVM很不错的博客:http://www.cnblogs.com/redcreen/archive/2011/05/04/2036387.html 一、堆参数设置 -XX:+PrintGC 使用这个参数,虚拟机启动后,只要遇到GC就会打印日志-XX:+UseSerialGC 配置串行回收器-XX:+PrintGCDetails 可以查看详细信息,包括各个区的情况-Xms:...
【转】java jvm 参数 -Xms -Xmx -Xmn -Xss 调优总结
weixin_34319374的博客
05-14 3017
常见配置举例 堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制.32位系统 下,一般限制在1.5G~2G;64为操作系统对内存无限制.我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m.典型设置: java -Xmx3550m -Xms35...
JVM常用内存参数配置
热门推荐
大鹏
11-08 6万+
一、    常用参数   -Xms    JVM启动时申请的初始Heap值,默认为操作系统物理内存的1/64但小于1G。默认当空余堆内存大于70%时,JVM会减小heap的大小到-Xms指定的大小,可通过-XX:MaxHeapFreeRation=来指定这个比列。Server端JVM最好将-Xms和-Xmx设为相同值,避免每次垃圾回收完成后JVM重新分配内存;开发测试机JVM可以保留默认值。
JVM 参数配置详细介绍
08-31
以下是对JVM参数配置的详细说明: 1. **堆内存配置**: - `-Xms`:设置JVM启动时分配的初始堆内存大小。 - `-Xmx`:设置JVM可使用的最大堆内存大小。 - `-Xmn`:设置年轻代(Young Generation)的大小,年轻代是...
tomcat6.0 修改启动内存设置 java jvm参数配置
10-10
在/usr/local/apache-tomcat-5.5.23/bin目录下的catalina.sh 添加:JAVA_OPTS='-Xms512m -Xmx1024m' 要加“m”说明是MB,否则就是KB了,在启动tomcat时会报内存不足。 -Xms:初始值 -Xmx:最大值 ...
jvm优化参数配置
10-25
jvm参数优化后,tomcat稳定可靠,附件为通过长时间在线测试的配置参数文件
tomcat jvm参数配置
12-09
详述tomcat服务端配置,使并发更加流畅
jvm 配置jvm参数
09-01
jvm 配置jvm参数 配置jvm参数
jvm生产环境上的一些配置参数
04-13
jvm生产环境上的一些配置参数。对没接触这方面的调优人员,有一定的参考价值。
JVM 一些重要配置参数
J 博客
01-15 1052
目标不同:Parallel Scavenge 的目标是在减少垃圾收集停顿时间的同时,达到最大的吞吐量。而CMS收集器的目标是降低垃圾收集的停顿时间,提供更好的应用程序响应性。工作方式冲突:Parallel Scavenge 在新生代使用并行垃圾回收方式,而CMS收集器在老年代使用并发标记-清除方式。参数冲突:Parallel Scavenge 和 CMS收集器都有一系列的配置参数,用于调整它们的行为和性能。同时使用这两个收集器时,参数配置可能会相互冲突,导致不一致的行为或性能问题。
JVM参数配置
weixin_42145766的博客
12-25 107
一、java启动参数共分为三类:1.标准参数(-), 所有的JVM实现都必须实现这些参数的功能,而且;2.是非标准参数(-X), 默认jvm实现这些参数的功能,但是并不保证所有jvm实现都满足,且不保证向后兼容;3.是非Stable参数(-XX),此类参数各个jvm实现会有所不同,这些都是不稳定的并且不推荐在生产环境中使用。将来可能会随时取消,需要慎重使用;上都被实现),而且如果在新版本有什么改动也不会发布通知。JVM参数选项说明:1.) 布尔型参数选项:-XX:+ 打开, -XX:- 关闭。
JVMJVM常见参数配置
qq_44600705的博客
02-27 1177
JVM常见参数配置 JVM参数类型: 1、标配参数:-version,-help,-showversion 2、x参数(了解):-Xint:解释执行;-Xcomp:第一次使用就编译成本地代码;-Xmixed:混合模式; 3、xx参数: (1)Boolean类型: 公式:-XX:+或-某个属性值,+表示开启,-表示关闭; 例子:-XX:+PrintGCDetails:打印GC收集信息;-XX:+UseSerialGC:使用串行垃圾收集器; (2)K-V设值类型: 公式:-XX:属性key=属性值valu
慢慢琢磨JVM——恭喜JavaEye重新开张
iteye_4959的博客
11-24 518
  1 JVM简介 JVM是我们Javaer的最基本功底了,刚开始学Java的时候,一般都是从“Hello World”开始的,然后会写个复杂点class,然后再找一些开源框架,比如Spring,Hibernate等等,再然后就开发企业级的应用,比如网站、企业内部应用、实时交易系统等等,直到某一天突然发现做的系统咋就这么慢呢,而且时不时还来个内存溢出什么的,今天是交易系统报了Stack...
jvm介绍
l664938026的博客
04-20 4119
JVM是由类加载器,字节码执行引擎,运行时数据区(堆,栈,本地方法栈,方法区,程序计数器)组成的
修改tomcat catalina.bat调整jvm内存及tomcat窗口标题
乘桴游海的专栏
05-18 1万+
开发这么久了,总会时不时碰到内存溢出的错误,知道应该去 catalina 中去设置一下jvm的内存大小。可是每次都忘记具体在哪个位置。而且,很多时候,出现内存溢出的环境都不是本机,而是服务器搭建环境的时候,而此时也没太多时间让自己去读一下 catalina.bat 这个脚本,只能每次都上网搜。今天正好有时间,就读了一下catalina.bat 这个脚本,记录一下。 以windows下的tomcat
linux jvm参数配置
03-16
Linux JVM参数配置是指在Linux系统中对Java虚拟机(JVM)进行参数设置,以优化Java应用程序的性能和稳定性。常见的JVM参数包括堆大小、垃圾回收器、线程数、内存分配等。根据应用程序的需求和硬件环境,可以通过修改JVM参数来达到最佳的性能和稳定性。常见的JVM参数配置工具包括JConsole、JVisualVM等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • [新人向]MySQL和Navicat下载、安装及使用详细教程 130926
  • Mybatis的四种分页方式详解 23903
  • MySQL 数据库 source 命令详解及实例 20300
  • 初步理解 Dubbo 与 Zookeeper 19566
  • 怎么查看mysql密码 18242

分类专栏

  • 开发环境 1篇
  • 并发编程面试 3篇
  • java全套学习资料 4篇
  • 学习路线 116篇
  • 面试 134篇
  • 阿里巴巴 127篇
  • 阿里巴巴资料职业发展 1篇
  • java 323篇
  • 前端 48篇
  • html 48篇
  • 学习路线阿里巴巴 1篇
  • 后端 18篇

最新评论

  • [新人向]MySQL和Navicat下载、安装及使用详细教程

    2303_81382409: 请问你解决了吗我也是

  • [新人向]MySQL和Navicat下载、安装及使用详细教程

    m0_69676895: 破解完了就可以一直用吗,为什么每次打开还是显示试用14天?

  • [新人向]MySQL和Navicat下载、安装及使用详细教程

    聊五毛钱的天: 服务启动成功但是mysql指令错误的,看看自己配置path环境变量时是不是直接复制了博主的%MYSQL_HOME%in,正确应该是%MYSQL_HOME%\bin

  • [新人向]MySQL和Navicat下载、安装及使用详细教程

    cp37: Jookdb有免费版,功能差不多

  • [新人向]MySQL和Navicat下载、安装及使用详细教程

    m0_64395758: 我也是没有,请问是怎么解决的

最新文章

  • 在 Mac 上安装 JDK 21 的详细流程
  • Java中创建线程的四种方法
  • 面试官:你能解释一下 `ReentrantLock` 和 `synchronized` 的区别吗?
2024年9篇
2023年1篇
2022年499篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

java_进阶路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳SEO优化公司东莞网站seo优化南联建站光明网站优化排名南山seo网站优化木棉湾网站改版大芬网站推广工具南联网站排名优化民治网站优化排名荷坳网站制作设计盐田企业网站制作坑梓关键词排名包年推广沙井seo排名福永网站改版龙岗网站建设设计龙华至尊标王坪山网站设计沙井网站优化木棉湾外贸网站建设大鹏网站制作坂田关键词排名包年推广平湖如何制作网站坂田网页设计福永品牌网站设计坪山网站改版福田网站优化按天计费惠州建网站大运企业网站制作沙井网站改版宝安网站优化软件龙岗网站关键词优化歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化