【idea性能篇】性能稳定、更好用的idea

3 篇文章 1 订阅

工欲善其事,必先利其器。idea作为Java程序员们工作中,打交道最多的软件,如果有过大量微服务项目同时开启开发的经验的程序员,想必会对idea是又爱又恨,过高的内存占用,运行时间长后idea响应迟钝,甚至无响应,简直令人抓狂。下面我们来让我们的idea变得更加好用吧,这些优化不仅仅是针对idea,理论上DataGrip,GoLand等Jetbrains的ide软件都是可以使用的。

1.JVM参数优化

idea也是基于Java开发,是运行在JVM中的,JVM的调优同样适用于idea。在idea中,工具栏中点击Help > Edit Custom VM Options,即可编辑JVM参数,重启后生效。

-Xverify:none 是让JVM加载类文件的时候,不去校验类文件的合法性完整性等,可以显著提高类加载的速度。我们默认idea软件提供的类都是可靠,配置这个参数后可以明显提高idea的打开时间,实现秒开的效果。

-Xmx2g 设置了最大的堆内存大小,可以控制你的idea无限制地占用你的系统内存。我这里设置的是2g,已经可以满足我的办公需要,大家可以按需调整。需要注意的是,这个堆内存你的idea编辑器的,所有idea打开的项目是共享这个堆内存的,但是,你在idea中run运行的程序,是不受这里的堆内存限制的。

-XX:+UseG1GC 配置使用G1垃圾回收器,目前最新版的idea已经是基于JDK17开发,支持ZCG和Shenandoah GC等新一代的垃圾回收器,但是目前都不足够稳定,也不适用于idea的使用场景。

在我的测试中,ZCG和Shenandoah GC均不能及时有效地进行垃圾回收,比较容易出现因堆内存占满导致idea严重卡顿的现象。所以我还是比较推荐使用G1垃圾回收器。

打开Memery Indicator,实时关注idea的堆内存占用情况。在idea的底栏,右键将Memery Indicator勾选上,就能在右下角实时看到内存占用,双击内存占用的显示条,还能手动触发垃圾回收释放内存。

完整配置文件参考:

-Xms1g
-Xmn256M
-Xmx2g
-XX:ReservedCodeCacheSize=512m
-XX:+UseG1GC
-XX:+UseStringDeduplication
-XX:MaxGCPauseMillis=200
-XX:InitiatingHeapOccupancyPercent=60
-XX:G1HeapRegionSize=32
-XX:ParallelGCThreads=8
-XX:G1ReservePercent=15
-XX:CICompilerCount=2
-XX:TieredStopAtLevel=1
-XX:MaxInlineLevel=3
-XX:Tier4MinInvocationThreshold=100000
-XX:Tier4InvocationThreshold=110000
-XX:Tier4CompileThreshold=120000
-Dsun.io.useCanonPrefixCache=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Djdk.attach.allowAttachSelf
-Xverify:none
-XX:SoftRefLRUPolicyMSPerMB=50
-Dkotlinx.coroutines.debug=off
-Djdk.module.illegalAccess.silent=true
-Dfile.encoding=UTF-8

2. 插件精简

每个idea插件都是要占用一定的内存的,所以尽量只安装和启用自己用的到的插件,可以减少idea对堆内存的占用,一定程度上提高idea的启动和运行效率。

idea自带的插件,Code With Me、 IDE Features Trainer 、Space、安卓套件、已经很少用到的Ant等,可以按自己实际需要把用不上的插件都给disable掉。

自己安装的插件如果不经常使用的话也可以disable掉或者直接卸载。后续我也会陆续给大家分享一些我经常使用的一些可以提高开发效率的插件给大家。

如果本文对你有帮助,欢迎大家关注收藏。作为一名具有极客精神的程序员,我会持续地给大家分享一些个人的开发经验和技术文章,若能帮助到你,那将是我莫大的荣幸。大家也可以关注我的同名微信公众号“三易程序员”,文章会在公众号和头条号同步更新,也欢迎大家私信探讨技术问题。

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
资源简介:SSM Java 项目集合 一、概述 在这个平台上,我们为大家带来了一系列的 JavaSSM(Spring + SpringMVC + MyBatis)项目。这些项目旨在展示SSM框架在实际应用中的魅力,同时也为开发者提供了一个快速学习和实践的机会。通过下载和使用这些项目,您将能够深入了解SSM框架的核心概念、设计模式和最佳实践。 二、项目特点 实战性强:这些项目均来自实际业务场景多个领域,具有很强的实战性和参考价值。 技术先进:所有项目均采用最新的SSM框架版本,包括Spring 、SpringMVC 和MyBatis 等,确保技术的先进性和稳定性。 代码规范:项目代码严格按照行业标准和最佳实践进行编写,易于阅读和维护。 文档齐全:每个项目都配备了详细的开发文档和使用说明,方便您快速上手和定制开发。 三、适用人群 Java初学者:通过学习和实践这些项目,您将能够快速掌握SSM框架的基础知识和核心技术。 中高级开发者:这些项目将为您提供丰富的实战经验和灵感,帮助您提升技术水平和解决问题的能力。 项目经理和架构师:这些项目可以作为参考和模板,帮助您更好地规划和设计实际业务场景中的Java项目。 四、下载与使用 下载:所有项目均提供下载,您只需在平台上注册并登录即可获取。 安装与部署:每个项目都提供了详细的安装和部署指南,帮助您快速搭建和运行项目。 定制开发:您可以根据实际需求对项目进行定制开发,扩展功能和优化性能。 五、结语 通过这一系列SSM Java项目的下载和学习,您将能够深入了解SSM框架的核心技术,提升自己的编程能力,并在实际业务场景中灵活应用。我们期待您能够通过这些项目获得更多的成长和进步!

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值