Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 17284|Svar: 1

[Kilde] JVM-parametre Muligheder

[Kopier link]
Opslået den 31-8-2020 kl. 22:20:25 | | |
Vi opdeler JVM-parametrene i tre dele baseret på JVM-parametrene, der starter med -X eller -XX:
1. Starter med -, standard VM-muligheden, VM-specifikationsmuligheden;
2. Dem, der starter med -X, er ikke-standard (disse parametre er ikke garanteret implementeret på alle JVM'er), og hvis der sker ændringer i den nye version, vil der ikke blive udsendt nogen meddelelse.
3. Dem, der starter med -XX, er ustabile og anbefales ikke til brug i produktionsmiljøer. Ændringer i disse parametre vil heller ikke blive underrettet. Bool-parameterindstillinger: -XX:+ tændt, -XX:- slukket. (f.eks. -XX:+PrintGCDetails) Den numeriske parameter-mulighed sættes med -XX:=. Tallene kan være m/m (megabyte), k/k (kilobyte), g/g (g-bytes). For eksempel: 32K betyder 32768 bytes. (f.eks. -XX:MaxPermSize=64m) Strengparameter-muligheden sættes med -XX:=, som normalt bruges til at angive en fil, sti eller kommandoliste. (f.eks. -XX:HeapDumpPath=./java_pid.hprof) kommandoen java -help kan liste standardmulighederne for java-applikationsopstart (se Appendix Standard VM Parameter Table, forskellige JVM-implementeringer er forskellige). java -X kan angive ikke-standard parametre (som er en udvidelse af JVM). -X-relaterede muligheder er ikke standard og vil ikke blive underrettet, hvis de ændres. Hvis du vil se de JVM-parametre, der aktuelt bruges af din applikation, kan du bruge: ManagementFactory.getRuntimeMXBean().getInputArguments().

ParameternavnbetydningStandardindstillinger/Noter
-XMSStart-heapstørrelse1/64 (<1GB) fysisk hukommelse Som standard (MinHeapFreeRatio-parameteren kan justeres) Når den ledige heap-hukommelse er under 40%, vil JVM øge heapen indtil den maksimale grænse på -Xmx
-XmxMaksimal heap-størrelse1/4 af den fysiske hukommelse (<1GB) standard (MaxHeapFreeRatio-parameteren kan justeres). Når den frie heap-hukommelse er større end 70%, vil JVM reducere heapen indtil minimumsgrænsen på -xms
-XmnGenerationsstørrelse (JDK 1.4 eller højere)Efter at den nye generation er øget, vil størrelsen på den gamle generation blive reduceret. Denne værdi har en betydelig indvirkning på systemets ydeevne. Sun anbefaler officielt konfigurationen til 3/8 af hele stakken
-XssStakstørrelsen for hver trådEfter JDK5.0 var hver trådstakstørrelse 1M, og tidligere var hver trådstakstørrelse 256K, hvilket kan være i K-, M- eller G-enheder
-XX:ThreadStackSizeIbid0 betyder, at standardværdien bruges, og den kan ikke forenes
-XX:PermSizeSæt den permanente algebras initialværdi1/64 af den fysiske hukommelse
-XX:MaxPermSizeSæt maksimum for permanent produktion1/4 af den fysiske hukommelse
-XX:NewRatioForholdet mellem kenozoikum (inklusive Eden og to overlevelseszoner) til alderdom (eksklusive permanent generation)-XX:NewRatio=4 betyder, at forholdet mellem kenozoikum og gammel alder er 1:4, og kenozoikum udgør 1/5 af hele stakken, Xms=Xmx og Xmn er sat, denne parameter behøver ikke at være sat.
-XX:OverleverRatioStørrelsesforholdet mellem Eden-området og Survivor-områdetHvis den sættes til 8, er forholdet mellem to Survivor-regioner og én Eden-region 2:8, og én Survivor-region udgør 1/10 af hele kenozoikum
-XX:StorSideStørrelseIBytesStørrelsen på hukommelsessiden bør ikke sættes for stor, da det vil påvirke størrelsen på Perm=128m
-XX:+UseFastAccessorMethodsHurtig optimering af den oprindelige type
-XX:+DisableExplicitGCLuk System.gc()Denne parameter kræver grundig testning
-XX:MaxTenuringThresholdMaksimal alder på affaldHvis objektet sættes til 0, vil det nye generationsobjekt gå direkte ind i den gamle æra uden at passere gennem Survivor-området. For ældre anvendelser kan effektiviteten forbedres. Hvis denne værdi sættes til en stor værdi, vil det nye generationsobjekt blive kopieret flere gange i Overlever-regionen, hvilket kan øge objektets overlevelsestid i den nye generation og øge sandsynligheden for at blive genanvendt i den nye generation, hvilket kun gælder for seriel GC
-XX:+AggressiveOptsHurtigere samling
-XX:+BrugBiasedLockingYdelsesforbedringer for låsemekanismer
-XnoclassgcDeaktiver affaldsgenbrug
-XX:SoftRefLRUPolicyMSPerMBOverlevelsestiden for SoftReference pr. megastack af ledig plads1'ere
-XX:PretenureSizeThresholdObjektets størrelse fordeles direkte i alderdommenEt andet tilfælde, hvor den nye generation bruger Parallel Scavenge GC, er ugyldigt, og et andet tilfælde, hvor det direkte tildeles i alderen, er et stort array-objekt uden eksterne referenceobjekter i arrayet.
-XX:TLABWasteTargetPercentProcentdel af TLAB i Eden-området1%
-XX:+CollectGen0FirstOm YGC kommer først, når FullGCfalse
-XX:+UseParallelGCFuld GC bruger parallel MSCSe [GC Parametre][1]
-XX:+UseParNewGCAt sætte den nye generation til at indsamle paralleltDen kan bruges sammen med CMS-samling, JDK 5.0 eller nyere, og JVM vil indstille den efter systemkonfigurationen, så der er ikke behov for at sætte denne værdi igen
-XX:ParallelGCThreadsAntallet af tråde til parallelkollektorenDenne værdi konfigureres bedst til antallet af processorer og er også egnet til CMS
-XX:+UseParallelOldGCDen gamle affaldsindsamlingsmetode er Parallel CompactingDette er parameterindstillingen, der vises i JAVA 6
-XX:MaxGCPauseMillisMaksimal tid pr. affaldsindsamling for ny generation (maksimal pausetid)Hvis denne tid ikke kan overholdes, vil JVM automatisk ændre størrelsen på den nye generation for at opfylde denne værdi.
-XX:+UseAdaptiveSizePolicyVælg automatisk størrelsen på det nye generationsområde og det tilsvarende forhold af overlevelsesarealetNår denne mulighed er sat, vælger den parallelle kollektor automatisk størrelsen på det nye generationsområde og den tilsvarende andel af overlevelsesarealet for at opnå den mindste tilsvarende tid eller indsamlingsfrekvens, som målsystemet har angivet
-XX:GCTimeRatioSæt affaldsindsamlingstiden som en procentdel af programmets køretidFormlen er 1/(1+n)
-XX:+ScavengeBeforeFullGCFuld GC før du ringer til YGCtrue
-XX:+UseConcMarkSweepGCBrug CMS-hukommelsesindsamlingEfter at have konfigureret dette i testen, er konfigurationen af -XX:NewRatio=4 ugyldig, og årsagen er ukendt, så det er bedst at bruge -Xmn til at sætte størrelsen på den nye generation på nuværende tidspunkt
-XX:+Aggressiv HeapForsøget er at bruge meget fysisk hukommelseOptimering af langvarigt stort hukommelsesforbrug, der kan kontrollere computerressourcer (hukommelse, antal processorer, mindst 256MB hukommelse) er påkrævet
-XX:CMSFullGCsBeforeCompactionHvor mange gange sker hukommelseskomprimering?Da den samtidige kollektor ikke komprimerer og organiserer hukommelsesrummet, vil den producere "fragmentering" efter kørsel i en periode, hvilket reducerer driftseffektiviteten
-XX:+CMSParallelRemarkEnabledNederste markørpauser
-XX+UseCMSCompactAtFullCollectionKompression af alderdommen, da det var FullGCCMS flytter ikke hukommelse, så det er meget let at producere fragmentering, hvilket resulterer i utilstrækkelig hukommelse, så hukommelseskomprimering vil være aktiveret på nuværende tidspunkt. Det er en god vane at øge denne parameter. Det kan påvirke ydeevnen, men det kan fjerne snavs
-XX:+BrugCMSInitiatingOccupancyOnlyStart CMS-indsamling med manuel definitionsinitialiseringHostSpot må ikke selv udløse CMS GC
-XX:CMSInitiatingOccupancyFraction=70CMS-indsamlingen begynder, når 70% af affaldet er brugt til affaldsgenbrugDenne værdi skal sættes for at opfylde følgende formel, CMSInitiatingOccupancyFraction
-XX:CMSInitiatingPermOccupancyFractionIndstil Perm Gen-brugen til at blive udløst, når forholdet er nået92
-XX:+CMSIncrementalModeSat til inkrementell tilstandBruges i enkelt-CPU kabinetter
-XX:+CMSClassUnloadingEnabledPermanent CMS GC
-XX:+PrintGCGC log-outputSamme som -verbose:gc
-XX:+PrintGCDetailsIbidFlere detaljer
-XX:+PrintGCTimeStampsOutput GC-tidsstempelBrug den med ovenstående PrintGC-parameter, eller skriv noget som -XX:+PrintGC:PrintGCTimeStamps
-XX:+PrintGC:PrintGCTimeStampsKan blandes med -XX:+PrintGC -XX:+PrintGCDetails
-XX:+PrintGCApplicationStoppedTimeTidspunktet programmet pauser under affaldsindsamlingen af trykte affald. Kan blandes med ovenståendeOutputformat: Samlet tid, hvor applikationstråde blev stoppet: 0,0468229 sekunder
-XX:+PrintGCApplicationConcurrentTimeUdskriv programmets uafbrudte eksekveringstid før hver garbage collectionKan blandes med ovenstående, outputform: Ansøgningstid: 0,5291524 sekunder
-XX:+PrintHeapAtGCPrint detaljerede stakoplysninger før og efter GC
-Xloggc:filnavnLog de relevante logoplysninger til en fil til analyseArbejder med de ovennævnte få
-XX:+PrintKlasseHistogramEfter at have trykket på Ctrl+Break i konsollen, udskriv klasseinformationen
-XX:+PrintKlasseHistogramForFuldGCFullGC før tryk
-XX:+PrintTLABSe brugen af TLAB-rummet
XX:+PrintTenuringDistributionSe tærsklen for den nye overlevelsesperiode efter hver mindre GC
-eaTænd assert assert
-XprofYdelsesdiagnostik
-XrunhprofYdelsesdiagnostik
-XX:+TraceClassLoadingUdskriver information om klasseindlæsningsprocessenLignende [Loaded java.util.AbstractList$Itr fra /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/jre/lib/rt.jar]
-XX:+TraceClassUnloadingPrint klasse afinstallationsprocesinformation
XbootclasspathSpecificerer indlæsning af klasser, der ikke kræver checksAt springe de nødvendige pre-load-kontroller over kan reducere load-tiden, men det er ikke sikkert
-XX:+PrintKompilationUdskriv metodenavnet, som Hotspot kompilerer med JIT
-XX:+HeapDumpOnOutOfMemoryErrorOM ved generering af et heap dumpStandardoutputtet er i rodmappen, hvor klassefilerne er gemt
-XX:HeapDumpPathSæt output-OM dump-filstienBrug med -XX:+HeapDumpOnOutOfMemoryError

Bilag

[Standard VM Parameterark]

ParameternavnbeskrivelseStandard
-d32Brug en 32-bit datamodel (hvis tilgængelig)
-d64Brug en 64-bit datamodel (hvis tilgængelig)
-serverVælg server-VM'enStandard-VM'en er server, fordi du kører på en server-lignende maskine.
-cp < mappe- og zip/jar-filklasse søgesti >
-classpath < klassesøgestien for mapper og zip/jar-filer >Brug : en liste over adskilte mapper, JAR-arkiver og ZIP-arkiver til at søge efter klassefiler
-D<名称>=<值>Egenskaber for mængdesystemet
-Ordrig: [klasse eller GC eller JNI]Aktivér detaljeret output
-versionOutput produktversionen og afslut
-<值>version:Udfaset
-showversionOutput produktversionen og fortsæt
-jre-restrict-search eller -no-jre-restrict-searchUdfaset
-? -HjælpOutput denne hjælpebesked
-XHjælp til output med ikke-standard muligheder
-EA[:< Pakkenavn, Klassenavn>]hævder
-enableassertions[:< pakkenavn, klassenavn>]Aktiver assertioner ved den angivne granularitet
-da[:< pakkenavn, klassenavn>]
-disableassertions[:< pakkenavn, klassenavn>]Deaktiver assertions med en specificeret granularitet
-esa eller -enablesystemassertionsEnable systemassertioner
-dsa eller -disablesystemassertionerDeaktiver systemassertioner
-agentlib:<libname>[=<选项>]Indlæs det native agentbibliotek <libname>For eksempel, -agentlib:hprofSe også -agentlib:jdwp=help og -agentlib:hprof=help
-agentpath:<pathname>[=<选项>]Indlæs det lokale agentbibliotek med det fulde stinavn
-javaagent:<jarpath>[=<选项>]For at indlæse Java-programmeringssprogagenten, se java.lang.instrument
-plask:<imagepath>Vis startskærmen med det angivne billede






Tidligere:Nuget Serie 1 bruger asp.net til at opbygge et privat Nuget-repository
Næste:Mysql CURRENT_TIMESTAMP og ON UPDATE CURRENT_TIMESTAMP adskilt
 Udlejer| Opslået den 13-1-2022 09:50:32 |


Bemærk: -Xms256m -Xmx1536m kan ikke placeres efter jar-parameteren!
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com