一键导入
java-performance
JVM performance tuning - GC optimization, profiling, memory analysis, benchmarking
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
JVM performance tuning - GC optimization, profiling, memory analysis, benchmarking
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Master Java concurrency - threads, executors, locks, CompletableFuture, virtual threads
Containerize Java applications - Dockerfile optimization, JVM settings, security
Master core Java programming - syntax, OOP, collections, streams, and exception handling
Master Gradle - Kotlin DSL, task configuration, build optimization, caching
Master JPA/Hibernate - entity design, queries, transactions, performance optimization
Master Maven and Gradle - build configuration, dependencies, plugins, CI/CD
| name | java-performance |
| description | JVM performance tuning - GC optimization, profiling, memory analysis, benchmarking |
| sasmp_version | 1.3.0 |
| version | 3.0.0 |
| bonded_agent | 02-java-advanced |
| bond_type | SECONDARY_BOND |
| allowed-tools | Read, Write, Bash, Glob, Grep |
| parameters | {"focus":{"type":"string","enum":["gc","memory","cpu","profiling"],"description":"Performance focus area"}} |
Optimize JVM performance through profiling, GC tuning, and memory analysis.
This skill covers JVM performance optimization including garbage collection tuning, memory analysis, CPU profiling, and benchmarking with JMH.
Use when you need to:
# High-throughput
-XX:+UseG1GC
-XX:MaxGCPauseMillis=200
-Xms4g -Xmx4g
-XX:+AlwaysPreTouch
# Low-latency
-XX:+UseZGC
-XX:+ZGenerational
-Xms8g -Xmx8g
# Memory-constrained
-XX:+UseSerialGC
-Xms512m -Xmx512m
-XX:+UseCompressedOops
# Container-optimized
-XX:+UseContainerSupport
-XX:MaxRAMPercentage=75.0
-XX:+ExitOnOutOfMemoryError
# Thread dump
jstack -l <pid> > threaddump.txt
# Heap dump
jmap -dump:format=b,file=heap.hprof <pid>
# GC analysis
jstat -gcutil <pid> 1000 10
# Flight recording
jcmd <pid> JFR.start duration=60s filename=app.jfr
# Async profiler
./profiler.sh -d 30 -f profile.html <pid>
@BenchmarkMode(Mode.Throughput)
@Warmup(iterations = 3, time = 1)
@Measurement(iterations = 5, time = 1)
@State(Scope.Benchmark)
public class MyBenchmark {
@Benchmark
public void testMethod(Blackhole bh) {
bh.consume(compute());
}
}
| GC | Latency | Throughput | Heap Size |
|---|---|---|---|
| G1 | Medium | High | 4-32GB |
| ZGC | Very Low | Medium | 8GB-16TB |
| Shenandoah | Very Low | Medium | 8GB+ |
| Parallel | High | Very High | Any |
| Problem | Cause | Solution |
|---|---|---|
| GC thrashing | Heap too small | Increase heap |
| High latency | GC pauses | Switch to ZGC |
| Memory leak | Object retention | Heap dump + MAT |
| CPU spikes | Hot loops | Profile + optimize |
Skill("java-performance")