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

这篇具有很好参考价值的文章主要介绍了【idea性能篇】性能稳定、更好用的idea。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

工欲善其事,必先利其器。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勾选上,就能在右下角实时看到内存占用,双击内存占用的显示条,还能手动触发垃圾回收释放内存。

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

完整配置文件参考:

-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掉或者直接卸载。后续我也会陆续给大家分享一些我经常使用的一些可以提高开发效率的插件给大家。

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

到了这里,关于【idea性能篇】性能稳定、更好用的idea的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 性能测试、负载测试、压力测试、稳定性测试简单区分

    是一个总称,可细分为性能测试、负载测试、压力测试、稳定性测试。 以系统设计初期规划的性能指标为预期目标,对系统不断施加压力,验证系统在资源可接受范围内,是否能达到性能瓶颈。 提取理解 有性能指标,验证 性能测试目标 验证系统的性能指标,是否为

    2024年02月09日
    浏览(44)
  • 扒开源安卓性能测试工具moblieperf源码——开发属于你自己的性能稳定性测试工具

    moblieperf由阿里巴巴开源的Android性能测试工具 下载:官方源码地址 mobileperf github 使用: 使用pycharm打开下载的项目 使用只需要修改配置文件 config.conf 即可 运行采集:a.mac、linux 在mobileperf工具根目录下执行sh run.sh ; b.windows 双击run.bat 配置图:(简单使用只需要修改包名和设

    2024年02月19日
    浏览(58)
  • 【003】-Cesium中加载大规模数据稳定流畅之性能优化思路

    使用数据流技术:Cesium支持使用数据流技术,即按需加载和卸载数据,以最小化数据传输量和加载时间。 在 Cesium 中, Cesium3DTileset#maximumMemoryUsage 属性的作用是控制 3D Tiles 的最大内存使用量,从而在保证数据流畅的前提下尽可能减小内存占用。 实现原理大致如下: Cesium 会根

    2024年01月20日
    浏览(41)
  • Linux TCP队列的实例详解,提高网络性能和稳定性!

    📚 个人网站:ipengtao.com TCP 队列是 Linux 操作系统中关键的网络管理组件,它们有助于控制和优化网络连接的性能。在这篇文章中,将深入研究 Linux TCP 队列的工作原理、配置选项以及提供丰富的示例代码,以帮助大家更好地理解和管理 TCP 队列。 在理解 TCP 队列之前,需要了

    2024年01月18日
    浏览(55)
  • 【性能测试】稳定性/并发压力测试的TPS计算+5W并发场景设计...

    1、稳定性测试TPS计算 ①普通计算公式:TPS=总请求数 / 总时间按照需求得到基础数据。 在去年第20周,某平台有5万的浏览量 那么总请求数我们可以估算为5万(1次浏览都至少对应1个请求) 总请求数 = 50000请求数 总时间:由于不知道每个请求的具体时间,我们按照普通方法,

    2024年02月04日
    浏览(56)
  • 腾讯云镜像TencentOS Server操作系统介绍、性能稳定性测评

    腾讯云TencentOS Server镜像是腾讯云推出的Linux操作系统,完全兼容CentOS生态和操作方式,TencentOS Server操作系统为云上运行的应用程序提供稳定、安全和高性能的执行环境,TencentOS可以运行在腾讯云CVM全规格实例上,包括黑石物理服务器2.0。腾讯云服务器网分享TencentOS Server镜像

    2024年02月07日
    浏览(59)
  • 性能、安全和稳定,袋鼠云数据服务平台 DataAPI 为企业 API 保驾护航

    通过 API 对外提供数据服务是大部分企业中比较常见的数据应用方式,对于 API *台管理者、开发者和调用者来说,API 的调用性能、安全性和稳定性是在*台选型时最需要考虑的三个因素。 袋鼠云API开发及管理*台【数栈-数据服务 DataAPI】通过多种手段标准化管控服务,可完成从

    2024年02月09日
    浏览(52)
  • 高性能、高扩展、高稳定:解读 EasyMR 大数据组件自定义可扩展能力

    随着互联网技术的不断发展以及大数据时代的兴起,企业对于数据分析和洞察的需求日益增长。大多数企业都积累了大量的数据,需要从这些数据中快速灵活地提取有价值的信息,以便为用户提供更好的服务或者帮助企业做出更明智的决策。 然而在不同的数据场景中,企业往

    2024年02月16日
    浏览(35)
  • RocketMQ on openEuler 提供高性能消息队列的稳定性解决方案

    RocketMQ on openEuler,是一种将 RocketMQ 消息中间件通过容器化的方式部署在 openEuler 操作系统上运行,借助 openEuler 系统对于 OS 缓存回收效率增强的内核特性,提升消息中间件在面向超大规模高并发、高吞吐量、低延迟场景下稳定性和可靠性的软件解决方案。 移动云 RocketMQ 消息

    2024年02月11日
    浏览(54)
  • 上一任留下的 Eureka,我该如何提升她的性能和稳定性(含数据比对)?

    开篇:一次小小的技术讨论 Aliware 周末的时候,和一位在国内某互联网公司负责运维的朋友聊天,由于工作相关,刚好聊到了公司项目中微服务架构这块的一些问题,他们公司的微服务架构使用的是业界比较常用的 Spring Cloud Netflix 那一套作为底座,有专门的同学负责运维一套

    2024年02月04日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包