Intellij IDEA 的VM options参数配置说明
Intellij IDEA 的Tomcat Server 配置VM options参数说明
点击Intellij IDEA 界面窗口Run,打开Edit Configuration,出现Run/Debug Configurations界面。Application server 选择安装Tomcat所在的文件夹,点击Configuration一般自动配置好了,其他的就按照图上的填写。
VM options这项需要我们自己填写,我填的是VM options : -Xms768m -Xmx768m -XX:PermSize=64M -XX:MaxPermSize=512m
每一项以空格隔开
参数说明
-Xms768m:设置JVM初始堆内存为768m。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。
-Xmx768m:设置JVM最大堆内存为768m。
-Xss128k:设置每个线程的栈大小。JDK5.0以后每个线程栈大小为1M,之前每个线程栈大小为256K。应当根据应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。需要注意的是:当这个值被设置的较大(例如>2MB)时将会在很大程度上降低系统的性能。
-Xmn2g:设置年轻代大小为2G。在整个堆内存大小确定的情况下,增大年轻代将会减小年老代,反之亦然。此值关系到JVM垃圾回收,对系统性能影响较大,官方推荐配置为整个堆大小的3/8。
-XX:NewSize=1024m:设置年轻代初始值为1024M。
-XX:MaxNewSize=1024m:设置年轻代最大值为1024M。
-XX:PermSize=256m:设置持久代初始值为256M。
-XX:MaxPermSize=256m:设置持久代最大值为256M。
-XX:NewRatio=4:设置年轻代(包括1个Eden和2个Survivor区)与年老代的比值。表示年轻代比年老代为1:4。
-XX:SurvivorRatio=4:设置年轻代中Eden区与Survivor区的比值。表示2个Survivor区(JVM堆内存年轻代中默认有2个大小相等的Survivor区)与1个Eden区的比值为2:4,即1个Survivor区占整个年轻代大小的1/6。
-XX:MaxTenuringThreshold=7:表示一个对象如果在Survivor区(救助空间)移动了7次还没有被垃圾回收就进入年老代。如果设置为0的话,则年轻代对象不经过Survivor区,直接进入年老代,对于需要大量常驻内存的应用,这样做可以提高效率。如果将此值设置为一个较大值,则年轻代对象会在Survivor区进行多次复制,这样可以增加对象在年轻代存活时间,增加对象在年轻代被垃圾回收的概率,减少Full GC的频率,这样做可以在某种程度上提高服务稳定性。
标准参数
所有JVM都必须支持这些参数的功能,而且向后兼容;例如:
-client——设置JVM使用Client模式,特点是启动速度比较快,但运行时性能和内存管理效率不高,通常用于客户端应用程序或开发调试;在32位环境下直接运行Java程序默认启用该模式。
-server——设置JVM使Server模式,特点是启动速度比较慢,但运行时性能和内存管理效率很高,适用于生产环境。在具有64位能力的JDK环境下默认启用该模式。
非标准参数(-X),默认JVM实现这些参数的功能,但是并不保证所有JVM实现都满足,且不保证向后兼容;
非稳定参数(-XX),此类参数各个JVM实现会有所不同,将来可能会不被支持,需要慎重使用;
Intellij IDEA 的VM options参数配置说明相关推荐
- IDEA Java程序启动添加参数 VM options、Program arguments、Program arguments
文章目录 Run Configuration 1. VM options 1.1 添加方法 1.2 获取方法 2. Program arguments 2.1 添加方法 2.2 获取方法 3. Env ...
- Java虚拟机(JVM)参数配置说明
http://lavasoft.blog.51cto.com/62575/25492/ Java虚拟机(JVM)参数配置说明 在Java.J2EE大型应用中,JVM非标准参数的配置直接关系到整个系 ...
- java虚拟机在哪配置参数,Java虚拟机(JVM)参数配置说明
Java虚拟机(JVM)参数配置说明 1. Java VM 运行于linux平台上的JVM会读取/etc/sysconfig/i18n中的参数来决定输出流的编码方式,如果在安装linux系统过程中没有 ...
- Vue源码后记-更多options参数(1)
我是这样计划的,写完这个还写一篇数据变动时,VNode是如何更新的,顺便初探一下diff算法. 至于vue-router.vuex等插件源码,容我缓一波好吧,vue看的有点伤. 其实在之前讲其余内置指 ...
- maven通过配置VM options可以解决乱码、证书、依赖下载等问题
前言 把工作中容易遇到的关于maven问题做了一下记录,发现有些可以通过VM options设置参数解决,于是把他们总结写了篇博客. 1.maven控制台输出乱码问题 出现这个原因是源码使用的是UTF ...
- AD9516/AD9517时钟芯片寄存器参数配置说明
目录 1 概述 2 界面参数设置 2.1 器件选择 2.2 参数设置 2.3 VCO的主要配置与关系 3 寄存器值 4 附录 5 AD9516_17_18 Eval Software 软件下载链接如下 ...
- .net core 中通过 PostConfigure 验证 Options 参数
.net core 中通过 PostConfigure 验证 Options 参数 Intro 在 .net core 中配置项推荐用 Options 来实现,有一些参数可能必须是用由用户来配置,不能 ...
- java获取vm运行参数_如何获取在Java中运行Java VM的版本?
java获取vm运行参数 To get the version of running VM (Virtual Machine) in Java, we use the getProperties() ...
- gbrl参数_grbl-0.9运行参数配置说明
grbl-0.9运行参数配置说明 2018-09-14 平台:ArduinoUNO R3 软件:Grbl 默认IO口配置 Grbl基本操作指令 参考[https://github.com/grbl/g ...
最新文章
- matlab zeros(12 1),Matlab中 函数zeroS(1,8) 代表什么意思??
- 通用双向链表的设计(参考Linux系统中的实现)
- linux 在某个core上的中断 affinity c语言函数,Linux中断处理体系结构
- 数论初步——同余与模算术
- MyCAT+MySQL 搭建高可用企业级数据库集群
- php mysql 日期时间_php Mysql日期和时间函数集合
- python 初始化数组 numpy,Python Numpy 数组的初始化和基本操作
- hyper虚拟机下对centos进行动态扩容
- html整体引入js,html页面用js引入js的方式
- Judge Complex(判断-复杂)
- python数据抓取课程_Python爬虫入门教程 22-100 CSDN学院课程数据抓取
- 周末ROS学习沙龙第三期——launch文件、自定义服务通信、控制机器人移动、传感器数据处理
- 算法--帕斯卡三角(杨辉三角)JS写法
- 小米3g刷高格固件_不走弯路:小米路由器3G 刷Padavan固件简单教程
- 完整HTML实例网页代码(1)
- 人工势场python_ROS及SLAM进阶教程(十一)多机器人编队人工势场法协同避障算法原理及实现...
- GAT GAX 简介
- 怎么查看自己宽带是公网ip还是内网ip?
- ArcGIS中去除Z或M值的方法
- 新建Flutter项目无法导入FlutterActivity
热门文章
- SSD固态盘高低温测试方法
- singalrhub
- C语言最难学的四大内容是什么?
- 电脑经常弹出“不支持的硬件”解决办法
- 公路村村通 (30分)【C语言】Prim算法 和 Kruskal算法
- 子墨对酒《三国杀》里论模式(三)适配器模式
- || ?? 和 ?. 的意思
- 配置远程运行后提示,/usr/bin/python: can‘t open file ‘xxxx‘: [Errno 2] No such file or directory
- Elasticsearch 集群压力测试
- protostuff介绍