Microsoft je izdal izvorno kodo GCToolkit

Microsoft je pred dnevi objavila novico, da je izdal izvorno kodo svojega orodja «GCToolkit», ki je niz knjižnic za razčlenjevanje dnevniških datotek zbirke Java Garbage Collection, s katerimi je vsa koda GCToolkit je na voljo na GitHubu pod licenco MIT.

GCToolkit je sestavljen iz treh modulov Java ki zajema API-je, razčlenjevalnike datotek dnevnika GC in hrbtno ploščo sporočil, ki temelji na orodju Vert.x za izdelavo odzivnih aplikacij na JVM. S tem pripomočkom lahko uporabniki ustvarijo poljubne in zapletene preglede stanja upravljanega pomnilnika v JVM.

Kot že ime pove, je to nabor knjižnic za razčlenjevanje dnevniških datotek Java zbirke smeti (GC) in njihovo razčlenjevanje v ločenih dogodkih. Izpostavite API za izboljšanje sodelovanja s kompletom orodij in združevanjem podatkov to uporabniku omogoča ustvarjanje poljubnih kompleksnih analiz stanja upravljanega pomnilnika JVM.

Po mnenju ekipe je to vstopna točka uporabnika v GCToolkitu, ki v nekaj klicih metod skrije podrobnosti o notranjih modulih. Poleg API -ja, obstajata še dva modula: modul za razčlenjevanje in Vert.x. Modul za razčlenjevanje temelji na zbirki regularnih izrazov in kode, zapisane v velja za najmočnejši razpoložljivi analizator dnevnika GC.

Podpora za pošiljanje sporočil temelji na Vert.x uporablja dve vodili za sporočila: prvi prenaša podatke iz vira podatkov. Trenutna izvedba prenaša vrstice dnevnika iz datoteke dnevnika GC. Potrošniki tega vodila so analizatorji, ki podatke iz vira podatkov pretvorijo v dogodke, ki predstavljajo cikel GC ali varno točko. Ti dogodki so objavljeni na drugem sporočilu: avtobusu dogodkov. Naročnike avtobusov dogodkov lahko nato obvestite in obdelajo dogodke, ki jih zanimajo.

Parser oddaja diskretne dogodke JVM, ki vam omogoča pisanje kode za zajem in analizo podatkov iz teh dogodkov. Za lažje zajemanje podatkov in analizo datotek dnevnika GC ponuja GCToolkit preprost okvir za združevanje. Vrsta podatkov, ki jih uporabniki želijo zajeti, ali vrsta analize, ki jo želijo izvesti, je po lastni presoji uporabnika. Na primer, za zajemanje prekinitvenih dogodkov za analizo zasedenosti kopice, zbiralnik zajame dogodek, izvleče ustrezne podatke in jih posreduje agregatu.

To združuje podatke v smiselno analizo, na primer skupno zasedenost kupa po zbiranju smeti. Dobljeni podatki so lahko predstavljeni v obliki grafa, tabele ali druge, uporabniku prijaznejše oblike. Še pomembneje je, da bo po mnenju ekipe suboptimalna konfiguracija zbiralnika povzročila aplikacijo, ki zahteva več CPU-ja in pomnilnika, hkrati pa poslabša izkušnjo končnega uporabnika. Z drugimi besedami, slabo uglašen zbiralec pogosto pomeni dražji čas delovanja in nezadovoljne uporabnike.

Zaradi vse večjega zanimanja Microsofta za platformo Java, osredotočiti v odprti kodi povečuje tudi koristi za skupnost Java. Microsoft je po tem, ko je pomembno prispeval k pristaniščem macOS M1 in sistemu Windows v Arm, Microsoft znova potrdil svojo zavezanost OpenJDK z uvedbo lastne različice OpenJDK in se pridružil delovni skupini Eclipse Adoptium (prej imenovani AdoptOpenJDK).

Z odprtim kodom GCToolkit, Microsoft poskuša zagotoviti boljši način za pregled notranjosti JVM o tem, kako ravna z GC in dodelitev pomnilnika. Boljša vidljivost omogoča boljšo konfiguracijo, kar koristi tako končnim uporabnikom aplikacije kot tehničnemu osebju, odgovornemu za njeno upravljanje.

Preprost API in enostavni izhodni mehanizmi obljubljajo, da bodo izboljšali nalogo branja dnevnikov GC z zagotavljanjem različnih mehanizmov za analizo, ekstrahiranje in vizualizacijo podatkov.

vir: https://devblogs.microsoft.com


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Odgovoren za podatke: AB Internet Networks 2008 SL
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.