Če želite konfigurirati parametre JVM za zmanjšanje premorov pri zbiranju smeti, lahko sledite tem korakom:
1. Nastavite velikost kopice:
- Nastavite največjo velikost kopice:- Za nastavitev največje velikosti kopice uporabite zastavico `-Xmx`.
- Na primer, `-Xmx2g` nastavi največjo velikost kopice na 2 GB.
- Nastavite začetno velikost kopice:
- Za nastavitev začetne velikosti kopice uporabite zastavico `-Xms`.
- Na primer, `-Xms2g` nastavi začetno velikost kopice na 2 GB.
2. Nastavite velikost mlade generacije:
- Nastavite velikost mlade generacije:- Za nastavitev velikosti mlade generacije uporabite zastavico `-Xmn`.
- Na primer, `-Xmn1g` nastavi velikost mlade generacije na 1 GB.
3. Nastavite zbiralnik smeti:
- Uporabite Garbage-First (G1) Garbage Collector:- Uporabite zastavico `-XX:+UseG1GC`, da omogočite zbiralnik smeti G1.
- Ta zbiralnik je zasnovan za zmanjšanje časa premora.
4. Nastavite najdaljši čas premora:
- Nastavite najdaljši čas premora:- Za nastavitev največjega časa premora uporabite zastavico `-XX:MaxGCPauseMillis`.
- Na primer, `-XX:MaxGCPauseMillis=200` nastavi največji čas premora na 200 milisekund.
5. Nastavite vzporedne niti GC:
- Nastavite število vzporednih niti GC:- Uporabite zastavico `-XX:ParallelGCThreads`, da nastavite število vzporednih niti GC.
- Na primer, `-XX:ParallelGCThreads=20` nastavi število vzporednih niti GC na 20.
6. Nastavite sočasne niti GC:
- Nastavite število sočasnih niti GC:- Uporabite zastavico `-XX:ConcGCThreads`, da nastavite število sočasnih niti GC.
- Na primer, `-XX:ConcGCThreads=5` nastavi število sočasnih niti GC na 5.
7. Nastavite odstotek zasedenosti začetne kopice:
- Nastavite odstotek zasedenosti začetne kopice:- Uporabite zastavico `-XX:InitiatingHeapOccupancyPercent`, da nastavite odstotek zasedenosti začetne kopice.
- Na primer, `-XX:InitiatingHeapOccupancyPercent=70` nastavi odstotek zasedenosti začetne kopice na 70 %.
8. Spremljaj in prilagajaj:
- Nadzor zbiranja smeti:- Uporabite orodja, kot sta VisualVM ali GCeasy za spremljanje zbiranja smeti.
- Po potrebi prilagodite parametre JVM, da zmanjšate čase premora.
Če sledite tem korakom, lahko konfigurirate parametre JVM, da čim bolj zmanjšate premore zbiranja smeti in zagotovite učinkovito delovanje aplikacije.
Citati:[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