
目标
测试机器和项目
测试场景
-
在 Idea 中关闭全部项目 -
基于测试文件 idea.vmoptions 进行设置 -
重启电脑 -
启动后关闭全部不相关的项目( communicators 等等) -
打开 Idea(测试时间) -
打开大项目(测试时间) -
检查 jstat -gcutil -
打开两个微服务项目(测试时间) -
检查 jstat -gcutil -
返回大项目而后点击“刷新 Gradle 项目”按钮(测试时间) -
检查 jstat -gcutil
jstat -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
默认(灰色标识)
-Xms128m
-Xmx750m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=240m
-XX:+UseCompressedOops
Big(大)(红色标识)
-Xms1024m-Xmx4096m-XX:ReservedCodeCacheSize=1024m-XX:+UseCompressedOops
Balanced(平衡的)(蓝色标识)
-Xms2g
-Xmx2g
-XX:ReservedCodeCacheSize=1024m
-XX:+UseCompressedOops
Sophisticated(复杂的)(橘色标识)
-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
Idea启动时间

加载大项目花费的时间
jstat -gcutil <IDEA_PID>


在IDEA中打开两个微服务

再次使用jstat –gcutil


最后的角逐:从新加载Monolith

最后一次使用jstat-gcutil


总结
本文分享自微信公众号 - 码农沉思录(code-thinker)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。java