Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 17284|Atbildi: 1

[Avots] JVM parametri Opcijas

[Kopēt saiti]
Publicēts 2020-8-31 22:20:25 | | |
Mēs sadalām JVM parametrus trīs daļās, pamatojoties uz JVM parametriem, sākot ar -X vai -XX:
1. Sākot ar -, standarta VM opcija, VM specifikācijas opcija;
2. Tie, kas sākas ar -X, ir nestandarta (šie parametri nav garantēti, ka tiks ieviesti visos JVM), un, ja jaunajā versijā būs kādas izmaiņas, paziņojums netiks izsniegts.
3. Tie, kas sākas ar -XX, ir nestabili un nav ieteicami lietošanai ražošanas vidē. Par šo parametru izmaiņām arī netiks paziņots. Bool parametru opcijas: -XX:+ ieslēgts, -XX:- izslēgts. (piem., -XX:+PrintGCDetails) Skaitliskā parametra opcija ir iestatīta ar -XX:=. Skaitļi var būt m/m (megabaiti), k/k (kilobaiti), g/g (g-baiti). Piemēram: 32K nozīmē 32768 baitus. (piemēram, -XX:MaxPermSize=64m) Parametra opcija String tiek iestatīta ar -XX:=, ko parasti izmanto, lai norādītu failu, ceļu vai komandu sarakstu. (piemēram, -XX:HeapDumpPath=./java_pid.hprof) komanda java -help var uzskaitīt standarta opcijas java lietojumprogrammu startēšanai (skatīt pielikumu Standarta VM parametru tabula, dažādas JVM implementācijas ir atšķirīgas). java -X var uzskaitīt nestandarta parametrus (kas ir JVM paplašinājums). Ar X saistītās opcijas nav standarta un netiks paziņotas, ja tās tiks mainītas. Ja vēlaties redzēt JVM parametrus, ko pašlaik izmanto jūsu lietojumprogramma, varat izmantot: ManagementFactory.getRuntimeMXBean().getInputArguments().

Parametra nosaukumsnozīmeNoklusējumi/piezīmes
-XmsSākotnējais kaudzes lielums1/64 (<1 GB) fiziskās atmiņas Pēc noklusējuma (parametru MinHeapFreeRatio var pielāgot) Ja brīvā kaudzes atmiņa ir mazāka par 40%, JVM palielinās kaudzi līdz maksimālajam ierobežojumam -Xmx
-XmxMaksimālais kaudzes izmērs1/4 no fiziskās atmiņas (<1 GB) noklusējuma (var pielāgot parametru MaxHeapFreeRatio) Ja brīvā kaudzes atmiņa ir lielāka par 70%, JVM samazinās kaudzi līdz minimālajai robežai -xms
-XmnPaaudzes lielums (JDK 1.4 vai jaunāka)Pēc jaunās paaudzes palielināšanas vecās paaudzes lielums tiks samazināts. Šai vērtībai ir būtiska ietekme uz sistēmas veiktspēju. Sun oficiāli iesaka konfigurāciju 3/8 no visa kaudzes
-XssKatra pavediena kaudzes lielumsPēc JDK5.0 katra pavediena kaudzes izmērs bija 1M, un iepriekš katra pavediena kaudzes izmērs bija 256K, kas var būt K, M vai G vienībās
-XX:ThreadStackSizeTurpat0 nozīmē, ka tiek izmantota noklusējuma vērtība, un to nevar apvienot
-XX: PermSizePastāvīgās algebras sākotnējās vērtības iestatīšana1/64 no fiziskās atmiņas
-XX:MaxPermSizePastāvīgās paaudzes maksimālā apjoma iestatīšana1/4 no fiziskās atmiņas
-XX:JaunaAttiecībaCenozoic (ieskaitot Ēdeni un divas izdzīvojušo zonas) attiecība pret vecumu (izņemot pastāvīgo paaudzi)-XX:NewRatio=4 nozīmē, ka Cenozoic attiecība pret vecumu ir 1:4, un Cenozoic veido 1/5 no visas kaudzes, Xms=Xmx un Xmn ir iestatīts, šis parametrs nav jāiestata.
-XX: Izdzīvojušā attiecībaĒdenes apgabala lieluma attiecība pret izdzīvojušo apgabaluJa iestatīts uz 8, divu izdzīvojušo reģionu attiecība pret vienu Ēdenes reģionu ir 2:8, un viens izdzīvojušais reģions veido 1/10 no visa Cenozoic
-XX:LargePageSizeInBytesAtmiņas lapas lielumu nedrīkst iestatīt pārāk lielu, jo tas ietekmēs Permas lielumu=128 miljoni
-XX:+UseFastAccessorMethodsĀtra sākotnējā tipa optimizācija
-XX:+AtspējotExplicitGCAizvērt System.gc()Šis parametrs prasa stingru pārbaudi
-XX:MaxTenuringThresholdMaksimālais atkritumu vecumsJa iestatīts uz 0, jaunās paaudzes objekts ieies vecajā laikmetā tieši, nešķērsojot Survivor apgabalu. Vecākiem lietojumiem var uzlabot efektivitāti. Ja šī vērtība ir iestatīta uz lielu vērtību, jaunās paaudzes objekts tiks kopēts vairākas reizes Survivor reģionā, kas var palielināt objekta izdzīvošanas laiku jaunajā paaudzē un palielināt varbūtību, ka tas tiks pārstrādāts jaunajā paaudzē, kas ir derīgs tikai sērijveida GC
-XX:+AgresīvsOptsPaātrināt kompilāciju
-XX:+UseBiasedLockingBloķēšanas mehānismu veiktspējas uzlabojumi
-XnoclassgcAtspējot atkritumu pārstrādi
-XX:SoftRefLRUPolicyMSPerMBSoftReference izdzīvošanas laiks uz megakaudzi brīvas vietas1s
-XX:PretenureSizeSlieksnisObjekta lielums ir tieši sadalīts vecumdienāsVēl viens gadījums, kad jaunā paaudze izmanto Parallel Scavenge GC, ir nederīgs, un vēl viens gadījums, kad tas ir tieši piešķirts vecumdienās, ir liels masīva objekts bez ārējiem atsauces objektiem masīvā.
-XX:TLABWasteTargetPercentTLAB procentuālais daudzums Ēdenes apgabalā1%
-XX:+CollectGen0FirstVai YGC ir pirmais, kad FullGCfalse
-XX:+UseParallelGCPilns GC izmanto paralēlu MSCSkatīt [GC parametri][1]
-XX:+UseParNewGCJaunās paaudzes iestatīšana paralēlai vākšanaiTo var izmantot kopā ar CMS kolekciju, JDK 5.0 vai jaunāku versiju, un JVM to iestatīs atbilstoši sistēmas konfigurācijai, tāpēc šī vērtība nav jāiestata vēlreiz
-XX: Paralēli GCThreadsParalēlā kolektora vītņu skaitsŠī vērtība ir vislabāk konfigurēta vienāda ar procesoru skaitu, un tā ir piemērota arī CMS
-XX:+UseParallelOldGCVecā atkritumu savākšanas metode ir paralēlā blīvēšanaŠī ir parametra opcija, kas parādās JAVA 6
-XX:MaxGCPauseMillisMaksimālais laiks jaunās paaudzes atkritumu savākšanai (maksimālais pauzes laiks)Ja šo laiku nevar izpildīt, JVM automātiski mainīs jaunās paaudzes izmērus, lai atbilstu šai vērtībai.
-XX:+UseAdaptiveSizePolicyAutomātiski izvēlieties jaunās paaudzes laukuma lielumu un atbilstošo izdzīvojušā apgabala attiecībuJa šī opcija ir iestatīta, paralēlais kolektors automātiski izvēlas jaunās paaudzes laukuma lielumu un atbilstošo izdzīvojušā laukuma proporciju, lai sasniegtu mērķa sistēmā noteikto minimālo atbilstošo laiku vai savākšanas biežumu
-XX: GCTimeRatioIestatiet atkritumu savākšanas laiku procentos no programmas darbības laikaFormula ir 1/(1+n)
-XX:+ScavengeBeforeFullGCPilns GC pirms zvanīšanas YGCtrue
-XX:+UseConcMarkSweepGCCMS atmiņas kolekcijas izmantošanaPēc tā konfigurēšanas testā konfigurācija -XX:NewRatio=4 ir nederīga, un iemesls nav zināms, tāpēc vislabāk ir izmantot -Xmn, lai iestatītu jaunās paaudzes lielumu šajā laikā
-XX:+Agresīva kaudzeMēģinājums ir izmantot daudz fiziskās atmiņasNepieciešama ilgtermiņa lielas atmiņas izmantošanas optimizācija, var pārbaudīt skaitļošanas resursus (atmiņa, procesoru skaits, vismaz 256 MB atmiņas)
-XX:CMSFullGCsPirmsBlīvēšanaCik reizes notiek atmiņas saspiešana?Tā kā vienlaicīgais kolektors nesaspiež un neorganizē atmiņas vietu, tas radīs "sadrumstalotību" pēc laika perioda, kas samazina darbības efektivitāti
-XX:+CMSParallelRemarkEnabledApakšējā marķiera pauzes
-XX+UseCMSCompactAtFullCollectionVecuma saspiešana, kad tas bija FullGCCMS nepārvieto atmiņu, tāpēc ir ļoti viegli radīt sadrumstalotību, kā rezultātā atmiņa ir nepietiekama, tāpēc atmiņas saspiešana tiks iespējota šajā laikā. Tas ir labs ieradums palielināt šo parametru. Tas var ietekmēt veiktspēju, bet var novērst gružus
-XX:+UseCMSInitiatingOccupancyOnlySāciet CMS kolekciju ar manuālu definīcijas inicializācijuHostSpot ir aizliegts aktivizēt CMS GC atsevišķi
-XX:CMSInitiatingOccupancyFraction=70CMS savākšana sākas pēc tam, kad 70% atkritumu tiek izmantoti atkritumu pārstrādeiŠī vērtība ir jāiestata, lai atbilstu šādai formulai: CMSInitiatingOccupancyFraction
-XX:CMSInitiatingPermOccupancyFractionIestatiet Perm Gen lietojumu, lai aktivizētu, kad attiecība ir sasniegta92
-XX:+CMSIncrementalModeIestatīt pakāpeniskajā režīmāIzmanto viena procesora gadījumos
-XX:+CMSClassUnloadingEnabledPastāvīgs CMS GC
-XX:+PrintGCGC log izejaTāds pats kā -verbose:gc
-XX:+PrintGCDetailsTurpatSīkāka informācija
-XX: + PrintGCTimeStampsIzvades GC laika zīmogsIzmantojiet to ar iepriekš minēto PrintGC parametru vai uzrakstiet kaut ko līdzīgu -XX:+PrintGC:PrintGCTimeStamps
-XX: + PrintGC: PrintGCTimeStampsVar sajaukt ar -XX:+PrintGC -XX:+PrintGCDetails
-XX:+PrintGCApplicationStoppedTimeLaiks, kad programma pauzē drukāšanas atkritumu savākšanas laikā. Var sajaukt ar iepriekš minētoIzvades formāts: Kopējais laiks, kurā lietojumprogrammu pavedieni tika apturēti: 0,0468229 sekundes
-XX:+PrintGCApplicationConcurrentTimeIzdrukājiet programmas nepārtraukto izpildes laiku pirms katras atkritumu savākšanasVar sajaukt ar iepriekš minēto, izvades forma: Lietošanas laiks: 0.5291524 sekundes
-XX:+PrintHeapAtGCDetalizētas steka informācijas drukāšana pirms un pēc GC
-Xloggc:faila nosaukumsAttiecīgās žurnāla informācijas reģistrēšana analīzes failāDarbojas ar iepriekš minētajiem dažiem
-XX:+PrintClassHistogrammaPēc Ctrl+Break nospiešanas konsolē izdrukājiet klases informāciju
-XX:+PrintClassHistogramBeforeFullGCFullGC pirms drukāšanas
-XX: + PrintTLABSkatīt TLAB telpas izmantošanu
XX:+PrintTenuringDistributionSkatīt jaunā izdzīvošanas perioda slieksni pēc katras nepilngadīgās GC
-eaIeslēgt apgalvojumu
-XprofVeiktspējas diagnostika
-XrunhprofVeiktspējas diagnostika
-XX: + TraceClassLoadingDrukā informāciju par klases ielādes procesuLīdzīgi kā [Ielādēts java.util.AbstractList$Itr no /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/jre/lib/rt.jar]
-XX:+TraceClassIzkraušanaDrukāšanas klases atinstalēšanas procesa informācija
XbootclasspathNorāda to klašu ielādi, kurām nav nepieciešamas pārbaudesIzlaižot nepieciešamās pirmsslodzes pārbaudes, var samazināt ielādes laiku, bet tas nav droši
-XX:+DrukāšanaKompilācijaDrukājiet metodes nosaukumu, ko Hotspot kompilē, izmantojot JIT
-XX:+HeapDumpOnOutOfMemoryErrorOM, ģenerējot kaudzes izgāztuviNoklusējuma izvade ir saknes mapē, kurā tiek glabāti klases faili
-XX:HeapDumpPathIzvades OM izmetes faila ceļa iestatīšanaIzmantojiet kopā ar -XX:+HeapDumpOnOutOfMemoryError

Papildinājums

[Standarta VM parametru lapa]

Parametra nosaukumsaprakstsNoklusējuma
-d32Izmantojiet 32 bitu datu modeli (ja pieejams)
-d6464 bitu datu modeļa izmantošana (ja pieejams)
-serverisIzvēlieties servera VMNoklusējuma VM ir serveris, jo jūs darbojaties serverim līdzīgā datorā.
-cp < direktorija un zip / jar failu klases meklēšanas ceļš >
-classpath < klases meklēšanas ceļš direktorijām un zip/jar failiem >Izmantojiet: atdalītu direktoriju, JAR arhīvu un ZIP arhīvu sarakstu, lai meklētu klases failus
-D <名称>=<值>Sistēmas rekvizītu iestatīšana
-verbose: [klase vai gc vai jni]Iespējot detalizētu izvadi
-versijaProdukta versijas izvade un izeja
-<值>versija:Novecojis
-ShowversionIzvadiet produkta versiju un turpiniet
-jre-restrict-search vai -no-jre-restrict-searchNovecojis
-? -palīgāIzvadiet šo palīdzības ziņojumu
-XIzvades palīdzība ar nestandarta opcijām
-ea[:< pakotnes nosaukums, klases nosaukums>]apgalvot
-enableassertions[:< pakotnes nosaukums, klases nosaukums>]Iespējot apgalvojumus ar norādīto detalizāciju
-da[:< pakotnes nosaukums, klases nosaukums>]
-disableassertions[:< pakotnes nosaukums, klases nosaukums>]Atspējot apgalvojumus ar noteiktu detalizāciju
-EKA vai -enablesystemapgalvojumiIespējot sistēmas apgalvojumus
-DSA vai -disablesystemapgalvojumiSistēmas apgalvojumu atspējošana
-AGENTLIB:<libname>[=<选项>]Ielādējiet vietējo aģentu bibliotēku <libname>Piemēram, -agentlib:hprofSkatīt arī -agentlib:jdwp=help un -agentlib:hprof=help
-aģenta ceļš:<pathname>[=<选项>]Ielādēt lokālo aģentu bibliotēku ar pilnu ceļa nosaukumu
-javaagent:<jarpath>[=<选项>]Lai ielādētu Java programmēšanas valodas aģentu, skatiet java.lang.instrument
-šļakatām:<imagepath>Parādiet šļakatu ekrānu ar norādīto attēlu






Iepriekšējo:Nuget 1. sērija izmanto asp.net, lai izveidotu privātu Nuget repozitoriju
Nākamo:Mysql CURRENT_TIMESTAMP un ON UPDATE CURRENT_TIMESTAMP diferencēti
 Saimnieks| Publicēts 2022-1-13 09:50:32 |


Piezīme: -Xms256m -Xmx1536m nevar novietot pēc burkas parametra!
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com