JVM-i parameetrite konfigureerimiseks prügikoristuspauside minimeerimiseks toimige järgmiselt.
1. Määrake kuhja suurus:
- Määrake kuhja maksimaalne suurus:- Kasutage kuhja maksimaalse suuruse määramiseks lippu "-Xmx".
- Näiteks "-Xmx2g" määrab kuhja maksimaalseks suuruseks 2 GB.
- Määrake kuhja esialgne suurus:
- Kasutage kuhja esialgse suuruse määramiseks lippu "-Xms".
- Näiteks "-Xms2g" määrab kuhja esialgseks suuruseks 2 GB.
2. Määrake noore põlvkonna suurus:
- Määrake noore põlvkonna suurus:- Kasutage noore põlvkonna suuruse määramiseks lippu "-Xmn".
- Näiteks "-Xmn1g" määrab noore põlvkonna suuruseks 1 GB.
3. Määrake prügikoguja:
- Kasutage prügikasti (G1) prügikogujat:- Kasutage G1 prügikoguja lubamiseks lippu "-XX:+UseG1GC".
- See kollektor on loodud pausiaegade minimeerimiseks.
4. Seadke maksimaalne pausiaeg:
- Seadke maksimaalne pausiaeg:- Kasutage maksimaalse pausiaja määramiseks lippu "-XX:MaxGCPauseMillis".
- Näiteks „-XX:MaxGCPauseMillis=200” määrab maksimaalseks pausiajaks 200 millisekundit.
5. Määrake paralleelsed GC lõimed:
- Määrake paralleelsete GC lõimede arv:- Kasutage paralleelsete GC lõimede arvu määramiseks lippu "-XX:ParallelGCThreads".
- Näiteks "-XX:ParallelGCThreads=20" määrab paralleelsete GC lõimede arvuks 20.
6. Seadke samaaegsed GC lõimed:
- Seadke samaaegsete GC lõimede arv:- Kasutage samaaegsete GC lõimede arvu määramiseks lippu "-XX:ConcGCThreads".
- Näiteks „-XX:ConcGCThreads=5” määrab samaaegsete GC lõimede arvuks 5.
7. Määrake alustava hunniku hõivatuse protsent:
- Määrake alustava hunniku hõivatuse protsent:- Kasutage alustava hunniku hõivatuse protsendi määramiseks lippu "-XX:InitiatingHeapOccupancyPercent".
- Näiteks „-XX:InitiatingHeapOccupancyPercent=70” määrab algatava hunniku hõivatuse protsendiks 70%.
8. Jälgi ja reguleeri:
- Jälgi prügikoristust:- Kasutage prügi kogumise jälgimiseks tööriistu, nagu VisualVM või GCeasy.
- Pausiaegade minimeerimiseks kohandage vastavalt vajadusele JVM-i parameetreid.
Järgides neid samme, saate konfigureerida JVM-i parameetrid, et minimeerida prügikoristuspause ja tagada rakenduse tõhus jõudlus.
Tsitaadid:[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