Untuk mengonfigurasi parameter JVM guna meminimalkan jeda pengumpulan sampah, Anda dapat mengikuti langkah-langkah berikut:
1. Setel Ukuran Tumpukan:
- Setel Ukuran Tumpukan Maksimum:- Gunakan tanda `-Xmx` untuk mengatur ukuran heap maksimum.
- Misalnya, `-Xmx2g` menetapkan ukuran heap maksimum menjadi 2 GB.
- Setel Ukuran Tumpukan Awal:
- Gunakan tanda `-Xms` untuk mengatur ukuran heap awal.
- Misalnya, `-Xms2g` menyetel ukuran heap awal menjadi 2 GB.
2. Tetapkan Ukuran Generasi Muda:
- Tetapkan Ukuran Generasi Muda:- Gunakan tanda `-Xmn` untuk mengatur ukuran generasi muda.
- Misalnya, `-Xmn1g` menyetel ukuran generasi muda menjadi 1GB.
3. Setel Pengumpul Sampah:
- Gunakan Pengumpul Sampah yang Mengutamakan Sampah (G1):- Gunakan tanda `-XX:+UseG1GC` untuk mengaktifkan pengumpul sampah G1.
- Kolektor ini dirancang untuk meminimalkan waktu jeda.
4. Setel Waktu Jeda Maks:
- Setel Waktu Jeda Maksimum:- Gunakan tanda `-XX:MaxGCPauseMillis` untuk menyetel waktu jeda maksimum.
- Misalnya, `-XX:MaxGCPauseMillis=200` menyetel waktu jeda maksimum menjadi 200 milidetik.
5. Setel Thread GC Paralel:
- Tetapkan Jumlah Thread GC Paralel:- Gunakan tanda `-XX:ParallelGCThreads` untuk mengatur jumlah thread GC paralel.
- Misalnya, `-XX:ParallelGCThreads=20` menetapkan jumlah thread GC paralel menjadi 20.
6. Setel Thread GC Bersamaan:
- Tetapkan Jumlah Thread GC Secara Bersamaan:- Gunakan tanda `-XX:ConcGCThreads` untuk mengatur jumlah thread GC secara bersamaan.
- Misalnya, `-XX:ConcGCThreads=5` menetapkan jumlah thread GC serentak menjadi 5.
7. Tetapkan Persentase Keterisian Heap yang Memulai:
- Tetapkan Persentase Keterhunian Heap Awal:- Gunakan tanda `-XX:InitiatingHeapOccupancyPercent` untuk mengatur persentase hunian heap awal.
- Misalnya, `-XX:InitiatingHeapOccupancyPercent=70` menetapkan persentase hunian heap awal menjadi 70%.
8. Pantau dan Sesuaikan:
- Pantau Pengumpulan Sampah:- Gunakan alat seperti VisualVM atau GCeasy untuk memantau pengumpulan sampah.
- Sesuaikan parameter JVM sesuai kebutuhan untuk meminimalkan waktu jeda.
Dengan mengikuti langkah-langkah ini, Anda dapat mengonfigurasi parameter JVM untuk meminimalkan jeda pengumpulan sampah dan memastikan kinerja aplikasi yang efisien.
Kutipan:[1] https://www.uber.com/blog/jvm-tuning-garbage-collection/
[2] https://docs.datastax.com/en/dse/6.8/managing/operations/configure-garbage-first-collection.html
[3] https://sematext.com/blog/java-garbage-collection-tuning/
[4] https://docs.Oracle.com/cd/E55119_01/doc.71/e55122/cnf_jvmgc.htm
[5] https://docs.Oracle.com/cd/E40972_01/doc.70/e40973/cnf_jvmgc.htm