idea打開的多了 內存占用也就多了 下邊是親試的優化ide性能的方法
1.設置JVM的啟動參數:
進入idea的安裝目錄的bin文件夾
打開 idea.exe.vmoptions 文件, 修改-Xmx 的 值為2048m
打開 idea64.exe.vmoptions 文件, 修改-Xmx 的 值為2048m
打開idea.properties文件,找到idea.max.intellisense.filesize,默認是2500,改為25000(數值僅供參考,具體數值根據自己文件大小來定)
參數作用:
-Xms1024m 設置初時的內存大小,提高Java程序的啟動速度
-Xmx2048m 設置最大內存數,提高該值,可以減少內存Garage收集的頻率,提高程序性能
-XX:ReservedCodeCacheSize=480m設置代碼內存容量
-XX:+UseParNewGC 使用并行收集算法
-server 控制內存garage方式,這樣你無需在花一到兩分鐘等待內存garage的收集
2.菜單配置設置JVM的啟動參數:通過Help - Edit Custom VM Options...
菜單設置配置,IntelliJ會優先使用這個地方的配置文件
3.關閉代碼檢查:
IntelliJ的代碼檢測功能非常強大,但也占用了一些資源,可以將默認的除 Error之外的其他級別的檢測都去掉
4.清空緩存并重建索引:
將編譯進程和Maven的堆值設置大一些
ps:下面看下IntelliJ IDEA 更新后,電腦卡成球,該如何優化?
來源 | https://urlify.cn/NBBbam
在和同事的一次討論中發現,對 IntelliJ IDEA 內存采用不同的設置方案,會對 IDE 的速度和響應能力產生不同的影響。
Don't be a Scrooge and give your IDE some more memory
不要做守財奴,給IDE多留點內存吧。
昨天,大家就是否自定義IntelliJ IDEA 的內存設置進行了討論,有些人選擇默認設置,有些人會對默認的設置進行簡單的變更,還有一些開發者會基于他們的需求進行全面復雜的設置。筆者目前的工作是處理幾個微服務項目和一個老項目,而客戶的核心業務需求非常大。對 IntelliJ IDEA 內存進行簡單設置以后,筆者明顯感受到了該 IDE 在速度和響應方面的改善。但當時筆者并未進行具體的測量,所以這只是主觀感受而已。
不過,參與討論的一位開發者給筆者發了一份他的設置,雖然是針對同個項目,該設置卻極其復雜。筆者對自己的設置并無不滿,但非常好奇,這些完全不同的設置對比 JetBrains 提供的默認設置,會有怎樣的不同。
目標
筆者的計劃是,在一個接近日常開發項目的場景下(加載一個大項目、加載2、3個微服務、git pull 后刷新大項目),測試各個設置帶來的效果,并選出內存消耗和速度都達到最優時的最佳設置。
測試機器和項目
筆記本電腦:MacBook Pro Retina, 2.3GHz Intel Core i7, 16GB 1600Mhz DDR3,SSD Disc, OS X Yosemite
項目
大項目―― Monolith ,70萬行代碼( Java[1] 8 和 Groovy ),303個Gradle模塊
兩個微服務――約有10000――20000行代碼( Java 8 和 Groovy )的小項目,各有一個Gradle模塊
測試場景
jstat -gcutil
jstat 是 JDK 自帶的工具,主要利用 JVM 內建的指令對 Java 應用程序的資源和性能進行實時的命令行監控,還包括對 Heap size 和垃圾回收狀況的監控。它有許多選項來收集各種數據,但這里只會用到:
-gcutil :
-gcutil - Summary of garbage collection statistics.
S0: Survivor space 0 utilization as a percentage of the space's current capacity.
S1: Survivor space 1 utilization as a percentage of the space's current capacity.
E: Eden space utilization as a percentage of the space's current capacity.
O: Old space utilization as a percentage of the space's current capacity.
M: Metaspace utilization as a percentage of the space's current capacity.
CCS: Compressed class space utilization as a percentage.
YGC: Number of young generation GC events.
YGCT: Young generation garbage collection time.
FGC: Number of full GC events.
FGCT: Full garbage collection time.
GCT: Total garbage collection time.
這個命令的輸出結果如下:
S0 S1 E O M CCS YGC YGCT FGC FGCT GCT
89.70 0.00 81.26 74.27 95.68 91.76 40 2.444 14 0.715 3.159
在本文中,最重要的參數是 GC 事件( YGC 和 FGC )次數和收集時間( YGCT 和 FGCT )。
測試設置
筆者設置了四種不同的設置,為了好記,給它們起了不同的名字。
默認(灰色標識)
JetBrains 提供的默認設置:
-Xms128m
-Xmx750m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=240m
-XX:+UseCompressedOops
Big(大)(紅色標識)
給 Xmx 配 4096MB, ReservedCodeCacheSize 設置 1024MB,這已經是相當多的內存了:
-Xms1024m
-Xmx4096m
-XX:ReservedCodeCacheSize=1024m
-XX:+UseCompressedOops
Balanced(平衡的)(藍色標識)
Xmx 和 Xms 都分配 2GB ,這是相當平衡的內存消耗:
-Xms2g
-Xmx2g
-XX:ReservedCodeCacheSize=1024m
-XX:+UseCompressedOops
Sophisticated(復雜的)(橘色標識)
和上面一樣, Xmx 和 Xms 都分配2GB,但是給 GC 和內存管理指定不同的垃圾回收器和許多不同的標志:
-server
-Xms2g
-Xmx2g
-XX:NewRatio=3
-Xss16m
-XX:+UseConcMarkSweepGC
-XX:+CMSParallelRemarkEnabled
-XX:ConcGCThreads=4
-XX:ReservedCodeCacheSize=240m
-XX:+AlwaysPreTouch
-XX:+TieredCompilation
-XX:+UseCompressedOops
-XX:SoftRefLRUPolicyMSPerMB=50
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djsse.enableSNIExtension=false
-ea
以上便是筆者的測試設置,為了執行該測試用例,還需要在~/Library/Preferences/IntelliJIdea15/下創建一個idea.vmoptions文件(這是 Mac OS 系統下的路徑設置,基于你的操作系統進行設置)
現在,執行測試用例并比較結果。
結果Idea啟動時間
正如上圖所示,啟動時間并不依賴于內存設置。Idea 在所有場景下的測試時間都是10秒,無論內存分配有多少。這并不足為奇,因為在此早期階段,這些設置并不會影響到應用的行為。
加載大項目花費的時間
現在加載 Monolith 項目及其70萬行代碼。終于,出現了一些的差異。默認設置所花費的時間幾乎是其它的3倍。很明顯,如此龐大的代碼庫需要更多的內存。如果我們執行:
jstat -gcutil <IDEA_PID>
會發現,對比其它設置, GC 在默認設置下會變得異常忙碌。
不僅 GC 釋放內存的總時間非常高(幾乎達到了50倍),而且 Full GC 的平均執行時間也非常非常長。大量的時間都花在了 Full GC 上面,這是 IDE 響應速度低的主要原因。
在IDEA中打開兩個微服務
現在加載這兩個微服務項目,在 IDEA 中打開并且對比他們所消耗的時間。
在這個測試用例下,差異還是非常明顯的,復雜設置表現最佳,而默認設置仍舊輸給了其他兩種設置。
再次使用jstat 亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb 成人精品aaaa网站| 久久精品国产69国产精品亚洲| 欧美激情视频网| 国产精品夜间视频香蕉| 日韩在线一区二区三区免费视频| 国产成人精品视| 成人黄色片在线| 国产成人av在线播放| 精品国产老师黑色丝袜高跟鞋| 国产一区二区三区欧美| 精品国产乱码久久久久久虫虫漫画| 日韩中文字幕不卡视频| 欧美色欧美亚洲高清在线视频| 国产成人精彩在线视频九色| 国产精品久久久久久婷婷天堂| 亚洲视频网站在线观看| 午夜精品福利视频| 日韩av观看网址| 亚洲在线视频观看| 日韩欧美国产高清91| 久久久久久久国产精品| 成人黄色中文字幕| 国色天香2019中文字幕在线观看| 国产精品久久久久久久久粉嫩av| 精品香蕉一区二区三区| 色婷婷成人综合| 亚洲午夜色婷婷在线| 日韩h在线观看| 亚洲久久久久久久久久| 国产免费一区二区三区在线能观看| 国产成人一区二区三区| 亚洲天堂男人的天堂| 成人黄色av网| 91成人精品网站| 久久久久亚洲精品| 亚洲精品自产拍| 91精品视频播放| 亚洲天堂日韩电影| 久久精品色欧美aⅴ一区二区| 国产成人精品日本亚洲| 亚洲欧洲高清在线| 欧美电影在线播放| 国产精品免费电影| 亚洲图片欧洲图片av| 97超碰国产精品女人人人爽| 欧洲亚洲女同hd| 成人伊人精品色xxxx视频| zzjj国产精品一区二区| 中文字幕在线亚洲| www.午夜精品| 欧美乱人伦中文字幕在线| 亚洲图片欧洲图片av| www.色综合| 26uuu亚洲国产精品| 日韩电视剧免费观看网站| 一个人看的www欧美| 亚洲tv在线观看| 在线观看欧美日韩| 欧美午夜精品在线| 亚洲国产欧美久久| 中文字幕av一区二区| 久久韩国免费视频| 69影院欧美专区视频| 久久精品国产亚洲精品| 成人网在线视频| 国产美女精品视频免费观看| 亚洲天堂成人在线| 久久人人爽人人爽人人片亚洲| 清纯唯美亚洲激情| 4p变态网欧美系列| 亚洲天堂av图片| 日韩中文娱乐网| 久久久久久九九九| 日韩在线免费av| 久久人人爽国产| 国产精品日韩在线观看| 成人在线小视频| 久久久亚洲天堂| 久久综合免费视频影院| 久久久久九九九九| 日韩少妇与小伙激情| 自拍偷拍亚洲欧美| 欧美国产日产韩国视频| 久久精品人人爽| 亚洲国产小视频在线观看| 日韩欧美国产中文字幕| 亚洲视频精品在线| 欧美做受高潮1| 亚洲成人激情视频| 中文字幕v亚洲ⅴv天堂| 亚洲精品免费在线视频| 色无极影院亚洲| 91午夜理伦私人影院| 在线观看欧美成人| 庆余年2免费日韩剧观看大牛| 成年人精品视频| 成人免费观看a| 欧美一区二区三区免费视| 国产精品美女免费视频| 不卡av在线播放| 日韩欧美在线播放| 欧美日韩国产综合视频在线观看中文| 日韩在线观看免费av| 黑人巨大精品欧美一区二区三区| 国产一区二区精品丝袜| 国产成人精品免费久久久久| 日韩欧美一区二区在线| 国产精品男女猛烈高潮激情| 亚洲情综合五月天| 国产成人激情视频| 日韩电影网在线| 国产女人精品视频| 亚洲国产97在线精品一区| 亚洲乱码一区二区| 91中文字幕在线观看| 午夜精品在线视频| 欧美激情视频一区二区| 久久精品国产91精品亚洲| 麻豆一区二区在线观看| 久久成人精品电影| 成人免费高清完整版在线观看| 亚洲男人天堂网站| 中文字幕久久精品| 91久久综合亚洲鲁鲁五月天| 97视频在线观看播放| 国产国语videosex另类| 欧美高清第一页| 午夜精品久久久久久99热软件| 亚洲精品一区av在线播放| 国产91精品青草社区| 亚洲精品日韩激情在线电影| 日韩**中文字幕毛片| 国产精品美女久久久久久免费| 精品国偷自产在线| 欧美日韩色婷婷| 57pao成人国产永久免费| 国内免费精品永久在线视频| 久久国产色av| 国产一区二区三区三区在线观看| 成人观看高清在线观看免费| 亚洲免费av片| 国产免费一区二区三区在线观看| 国产网站欧美日韩免费精品在线观看| 国产精品久久久久久久久久三级| 日本午夜在线亚洲.国产| 亚洲电影在线看| 成人黄色片在线| 国产精品69精品一区二区三区| 欧美日韩国产精品一区二区三区四区| 午夜精品久久久久久久男人的天堂| 亚洲精品720p| 欧美中在线观看| 欧美主播福利视频| 欧美日韩国产中文字幕| 亚洲va国产va天堂va久久| 精品久久久久久久久久久久久久| 亚洲国产另类久久精品| 日韩经典第一页| 精品免费在线视频| 国产丝袜一区二区三区免费视频| 亚洲国产精品嫩草影院久久| 国产在线拍揄自揄视频不卡99| 日韩日本欧美亚洲| 国产国产精品人在线视|