Microsoft lëshoi ​​kodin burimor GCToolkit

microsoft ka publikuar pak ditë më parë lajmin se ka lëshuar kodin burimor të mjetit të tij «GCToolkit», e cila është një grup bibliotekash për të analizuar skedarët e regjistrit të Java Garbage Collection, me të cilat të gjithë kodin GCToolkit është në dispozicion në GitHub nën licencën MIT.

GCToolkit përbëhet nga tre module Java që mbulojnë API-të, analizuesit e skedarëve të regjistrit GC dhe një tabelë mesazhi të bazuar në vegla Vert.x për ndërtimin e aplikacioneve të përgjegjshme në JVM. Me këtë mjet, përdoruesit mund të krijojnë skanime arbitrare dhe komplekse të gjendjes së kujtesës së menaxhuar në JVM.

Siç sugjeron edhe emri, kjo është një grup bibliotekash për analizimin e skedarëve të regjistrit të mbledhjes së mbeturinave Java (GC) dhe analizimin e tyre në ngjarje të veçanta. Ekspozoni një API për të përmirësuar angazhimin me grupin e veglave dhe grumbullimin e të dhënave, kjo lejon përdoruesin të krijojë analiza komplekse arbitrare të gjendjes së kujtesës së menaxhuar të JVM.

Sipas ekipit, kjo është pika e hyrjes së përdoruesit në GCToolkit që fsheh detajet e moduleve të brendshme në disa thirrje metodash. Përveç API -së, ka dy module të tjera: moduli i analizës dhe Vert.x. Moduli Parser bazohet në një koleksion të shprehjeve të rregullta dhe kodit të shkruar të konsiderohet si analiza më e fuqishme e regjistrit GC në dispozicion.

Sfondi i mesazheve i bazuar në Vert.x përdor dy autobusë mesazhesh: i pari transmeton të dhëna nga një burim i të dhënave. Implementimi aktual kalon linja log nga skedari log GC. Konsumatorët e këtij autobusi janë analizuesit që konvertojnë të dhënat nga burimi i të dhënave në ngjarje që përfaqësojnë një cikël GC ose pikë të sigurt. Këto ngjarje publikohen në autobusin e mesazhit të dytë: autobusi i ngjarjeve. Abonentët e autobusit të ngjarjeve mund të njoftohen dhe të përpunojnë ngjarjet që i interesojnë ata.

Parser lëshon ngjarje diskrete JVM, duke ju lejuar të shkruani kod për të kapur dhe analizuar të dhënat nga këto ngjarje. Për të lehtësuar kapjen e të dhënave dhe analizën e skedarëve të regjistrit GC, GCToolkit siguron një kornizë të thjeshtë grumbullimi. Lloji i të dhënave që përdoruesit duan të kapin ose lloji i analizës që duan të kryejnë është në diskrecionin e përdoruesit. Për shembull, për të kapur ngjarjet e pauzës për të analizuar kapjen e grumbullit, grumbulluesi kap ngjarjen, nxjerr të dhënat përkatëse dhe i kalon të dhënat në grumbullim.

Kjo i bashkon të dhënat në një analizë kuptimplote, për shembull zënia totale e grumbullit pas grumbullimit të mbeturinave. Të dhënat që rezultojnë mund të paraqiten në formën e një grafiku, tabele ose një formati tjetër më miqësor për përdoruesit. Më e rëndësishmja, sipas ekipit, një konfigurim nënoptimal i kolektorit do të rezultojë në një aplikacion që kërkon më shumë CPU dhe memorie, duke degraduar përvojën e përdoruesit përfundimtar. Me fjalë të tjera, një koleksionist i rregulluar dobët shpesh nënkupton kohën më të shtrenjtë të ekzekutimit dhe përdoruesit e pakënaqur.

Me interesin në rritje të Microsoft për platformën Java, përqendrohem në burim të hapur po rrit gjithashtu përfitimet për komunitetin Java. Pasi dha kontribute të rëndësishme në portin macOS M1 dhe Windows to Arm, Microsoft riafirmoi angazhimin e tij ndaj OpenJDK duke prezantuar versionin e tij të OpenJDK dhe duke u bashkuar me grupin e punës të Eclipse Adoptium (i njohur më parë si AdoptOpenJDK).

Duke e bërë GCToolkit burim të hapur, Microsoft po përpiqet të ofrojë një mënyrë më të mirë për të parë brendësinë e JVM se si trajton GC dhe alokimin e kujtesës. Pamshmëria më e mirë lejon konfigurim më të mirë, i cili përfiton si përdoruesit përfundimtarë të aplikacionit ashtu edhe personeli teknik përgjegjës për menaxhimin e tij.

API-ja e thjeshtë dhe mekanizmat dalës të lehtë për t’u përdorur premtojnë të përmirësojnë detyrën e leximit të regjistrave të GC duke siguruar mekanizma të ndryshëm për të analizuar, nxjerrë dhe vizualizuar të dhënat.

Fuente: https://devblogs.microsoft.com


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: AB Internet Networks 2008 SL
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.