Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon kaip galiu sukonfigūruoti JVM parametrus, kad būtų sumažintos šiukšlių surinkimo pauzės


kaip galiu sukonfigūruoti JVM parametrus, kad būtų sumažintos šiukšlių surinkimo pauzės


Jei norite sukonfigūruoti JVM parametrus ir sumažinti šiukšlių surinkimo pauzes, galite atlikti šiuos veiksmus:

1. Nustatykite krūvos dydį:

- Nustatykite didžiausią krūvos dydį:
- Norėdami nustatyti didžiausią krūvos dydį, naudokite žymą „-Xmx“.
- Pavyzdžiui, „-Xmx2g“ nustato didžiausią krūvos dydį iki 2 GB.

- Nustatykite pradinį krūvos dydį:
- Norėdami nustatyti pradinį krūvos dydį, naudokite žymą „-Xms“.
- Pavyzdžiui, „-Xms2g“ nustato pradinį krūvos dydį į 2 GB.

2. Nustatykite jaunosios kartos dydį:

- Nustatykite jaunosios kartos dydį:
- Norėdami nustatyti jaunosios kartos dydį, naudokite vėliavėlę „-Xmn“.
- Pavyzdžiui, „-Xmn1g“ nustato jaunosios kartos dydį į 1 GB.

3. Nustatykite šiukšlių rinktuvą:

- Naudokite šiukšlių rinktuvą „Grage-First“ (G1):
- Norėdami įjungti G1 šiukšlių rinktuvą, naudokite žymą „-XX:+UseG1GC“.
- Šis kolektorius sukurtas taip, kad sumažintų pauzės laiką.

4. Nustatykite didžiausią pauzės laiką:

- Nustatykite didžiausią pauzės laiką:
- Norėdami nustatyti didžiausią pauzės laiką, naudokite žymą „-XX:MaxGCPauseMillis“.
– Pavyzdžiui, „-XX:MaxGCPauseMillis=200“ nustato maksimalią pauzės trukmę iki 200 milisekundžių.

5. Nustatykite lygiagrečius GC siūlus:

- Nustatykite lygiagrečių GC gijų skaičių:
- Norėdami nustatyti lygiagrečių GC gijų skaičių, naudokite žymą „-XX:ParallelGCThreads“.
- Pavyzdžiui, „-XX:ParallelGCThreads=20“ lygiagrečių GC gijų skaičių nustato iki 20.

6. Nustatykite lygiagrečias GC gijas:

- Nustatykite lygiagrečių GC gijų skaičių:
- Norėdami nustatyti lygiagrečių GC gijų skaičių, naudokite žymą „-XX:ConcGCThreads“.
- Pavyzdžiui, „-XX:ConcGCThreads=5“ nustato lygiagrečių GC gijų skaičių į 5.

7. Nustatykite pradinį krūvos užimtumo procentą:

- Nustatykite pradinį krūvos užimtumo procentą:
– Naudokite žymą „-XX:InitiatingHeapOccupancyPercent“, kad nustatytumėte inicijuojančio krūvos užimtumo procentą.
- Pavyzdžiui, „-XX:InitiatingHeapOccupancyPercent=70“ nustato inicijuojančios krūvos užimtumo procentą į 70%.

8. Stebėkite ir reguliuokite:

- Stebėkite šiukšlių surinkimą:
- Norėdami stebėti šiukšlių surinkimą, naudokite tokius įrankius kaip VisualVM arba GCeasy.
- Jei reikia, koreguokite JVM parametrus, kad sumažintumėte pauzės laiką.

Atlikdami šiuos veiksmus, galite sukonfigūruoti JVM parametrus, kad sumažintumėte šiukšlių surinkimo pauzes ir užtikrintumėte efektyvų programos veikimą.

Citatos:
[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