Microsoft ga ut GCToolkit -kildekoden

Microsoft har sluppet nyheten om at for noen dager siden har gitt ut kildekoden til verktøyet «GCToolkit», som er et sett med biblioteker for å analysere loggfilene for Java Garbage Collection, som alle GCToolkit -koder med er tilgjengelig på GitHub under MIT -lisensen.

GCToolkit består av tre Java -moduler som dekker API-er, GC-loggfil-parsere og en Vert.x verktøykassebasert meldingsbakplate for å bygge responsive applikasjoner på JVM. Med dette verktøyet kan brukerne lage vilkårlige og komplekse skanninger av tilstanden til administrert minne i JVM.

Som navnet antyder, er dette et sett med biblioteker for å analysere loggfiler for Java -søppelsamling (GC) og analysere dem i separate hendelser. Avslør et API for å forbedre engasjementet med verktøykassen og dataaggregering, dette lar brukeren lage vilkårlige komplekse analyser av tilstanden til JVMs administrerte minne.

Ifølge teamet er dette brukerinngangspunktet i GCToolkit som skjuler detaljene i de interne modulene i noen få metodeanrop. I tillegg til API, det er to andre moduler: analysemodulen og Vert.x. Parsermodulen er basert på en samling vanlige uttrykk og kode som er skrevet til regnes som den mest robuste GC -logganalysatoren som er tilgjengelig.

Meldingen backend basert på Vert.x bruker to meldingsbusser: førstnevnte overfører data fra en datakilde. Den nåværende implementeringen passerer logglinjer fra GC -loggfilen. Forbrukerne av denne bussen er analysatorene som konverterer dataene fra datakilden til hendelser som representerer en GC -syklus eller et sikkert punkt. Disse hendelsene blir publisert på den andre meldingsbussen: hendelsesbussen. Eventbussabonnentene kan deretter bli varslet og behandle hendelsene som interesserer dem.

Parser sender ut diskrete JVM -hendelser, slik at du kan skrive kode for å fange og analysere data fra disse hendelsene. For å lette datafangst og analyse av GC -loggfiler, tilbyr GCToolkit et enkelt aggregeringsrammeverk. Datatypen som brukerne vil fange, eller hvilken type analyse de vil utføre, er etter brukerens skjønn. For eksempel, for å fange pausehendelser for å analysere haugbelegg, fanger aggregatoren hendelsen, trekker ut relevante data og sender dataene til aggregasjonen.

Dette bringer dataene sammen i en meningsfull analyse, for eksempel total haugbelegg etter søppelinnsamling. De resulterende dataene kan presenteres i form av en graf, tabell eller et annet mer brukervennlig format. Enda viktigere, ifølge teamet, vil en suboptimal samlerkonfigurasjon resultere i et program som krever mer CPU og minne, samtidig som sluttbrukeropplevelsen forringes. Med andre ord betyr en dårlig innstilt samler ofte dyrere kjøretid og misfornøyde brukere.

Med Microsofts økende interesse for Java -plattformen, fokus i åpen kildekode øker det også fordelene for Java -samfunnet. Etter å ha gitt betydelige bidrag til port macOS M1 og Windows to Arm, bekreftet Microsoft sitt engasjement for OpenJDK ved å introdusere sin egen versjon av OpenJDK og bli med i Eclipse Adoptium arbeidsgruppe (tidligere kjent som AdoptOpenJDK).

Ved å gjøre GCToolkit åpen kildekode, Microsoft prøver å gi en bedre måte å se internt i JVM på hvordan den håndterer GC og minnetildeling. Bedre synlighet gir bedre konfigurasjon, noe som er til fordel for både sluttbrukerne av applikasjonen og det tekniske personellet som er ansvarlig for administrasjonen.

Den enkle API og brukervennlige utgangsmekanismer lover å forbedre oppgaven med å lese GC-logger ved å tilby forskjellige mekanismer for å analysere, trekke ut og visualisere data.

Fuente: https://devblogs.microsoft.com


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: AB Internet Networks 2008 SL
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.