IntelliJ IDEA优化配置的实现

网友投稿 421 2023-04-06

IntelliJ IDEA优化配置的实现

默认配置

默认配置比较低,打开http://稍大点的项目就很容易卡掉,所以最好扩大一下内存。

IntelliJ IDEA的VM配置

IntelliJ IDEA2020版本已经有中文汉化插件的,不熟悉英文的可以安装一下,配置VM的菜单见"帮助" -> "编辑自定义VM选项"。

直接上配置。

# custom IntelliJ IDEA VM options

##################JVM模式############################

# IDEA的JVM以Server模式启动(新生代默认使用ParNew)

-server

##################内存分配############################

# 堆初始值占用

-Xms2048m

# 堆最大值占用

-Xmx3500m

# Metaspace 空间大小

-XX:MaxMetaspaceSize=512m

-XX:MetaspaceSize=128m

# 强制JVM在启动时申请到足够的堆内存(否则IDEA启动时堆初始大小不足3g)

# -XX:+AlwaysPreTouch

# 年轻代与老年代比例为1:3http://(默认值是1:4),降低年轻代的回收频率

-XX:NewRatio=3

# 每个线程堆栈的大小 2m

# -Xss2m

##################老年代回收器############################

# 使用cms老年代回收器

# -XX:+UseConcMarkSweepGC

# CMS的重新标记步骤:多线程一起执行

# -XX:+CMSParallelRemarkEnabled

# 使用 G1 (Garbage First) 垃圾收集器 (因为本地是JDK版本是JDK8,所以启用G1收集器,8以下的可以试用CMS收集器)

-XX:+UseG1GC

# 设置垃圾收集器在并行阶段使用的线程数[一般设置为本机CPU线程数相等,即本机同时可以处理的个数,设置过大也没有用]

-XX:ParallelGCThreads=4

# 并发垃圾收集器使用的线程数量 启用4个线程并发标记(理论上越多越好,前提是CPU核心足够多)

-XX:ConcGCThreads=2

##################JIT编译器############################

# 代码缓存,用于存放Just In Time编译后的本地代码,如果塞满,JVM将只解释执行,不再编译native代码。

-XX:ReservedCodeCacheSize=512m

# 分层编译,JIT编译优化越来越好,IDEA运行时间越久越快

-XX:+TieredCompilation

# 节省64位指针占用的空间,代价是JVM额外开销

# -XX:+UseCompressedOops

# 增大软引用在JVM中的存活时长(堆空闲空间越大越久)

-GTYlphlnaXX:SoftRefLRUPolicyMSPerMB=50

-Dsun.io.useCanonCaches=false

-Djava.net.preferIPv4Stack=true

# -Djsse.enableSNIExtension=false

##################日志############################

# 禁止在启动期间显式调用System.gc()

-XX:+DisableExplicitGC

# 字体

-Dawt.useSystemAAFontSettings=lcd

# 关闭 fast throw 优化

-XX:-OmitStackTraceInFastThrow

-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log

# 当堆内存空间溢出时输出堆的内存快照

-XX:+HeapDumpOnOutOfMemoryError

-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof

# 打印GC详细信息

-XX:+PrintGCDetails

# 打印CG发生的时间戳

-XX:+PrintGCTimeStamps

# 每一次GC前和GC后http://,都打印堆信息

-XX:+PrintHeapAtGC

-Xbootclasspath/a:../lib/boot.jar

-Dfile.encoding=UTF-8

-XX:MaxInlineLevel=3

##################其他设置############################

# 启动断言

-ea

-Dsun.java2d.renderer=sun.java2d.marlin.MarlinRenderingEngine

# 去除字节码验证

-Xverify:none

插件

IntelliJ IDEA 安装了大量的插件,可以根据自己的习惯取消掉一些。选择“帮助” -> "活动监视器"可以看到内部活动占CPU的百分比,如果有没必要的活动占据了大量的插件,那么可以停掉该插件,或者直接卸载。

活动监视器

插件的启动性能分析

相信我,你并不需要那么多的智能提示。阿里巴巴的代码检查挺好的,但是如果性能不允许,可以关闭实时监测,而且在代码编写的时候,可能会跟某些工具类产生冲突,比如Vert.x,导致CPU跑慢,只能杀死进程。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:java agent使用全解析
下一篇:SpringBoot java
相关文章

 发表评论

暂时没有评论,来抢沙发吧~