Microsoft je objavio izvorni kod GCToolkita

Microsoft objavila je prije nekoliko dana vijest da objavio je izvorni kod svog alata «GCToolkit», koji je skup biblioteka za raščlanjivanje datoteka dnevnika Java Garbage Collection, s kojima je sav GCToolkit kôd je dostupan na GitHub -u pod MIT licencom.

GCToolkit se sastoji od tri Java modula koji pokrivaju API-je, rastavljače datoteka dnevnika GC i pozadinsku ploču poruka zasnovanu na alatu Vert.x za izgradnju responzivnih aplikacija na JVM-u. Pomoću ovog pomoćnog programa korisnici mogu kreirati proizvoljna i složena skeniranja stanja upravljane memorije u JVM -u.

Kao što ime govori, ovo je skup biblioteka za raščlanjivanje datoteka dnevnika Java prikupljanja smeća (GC) i njihovo raščlanjivanje u zasebne događaje. Izložite API za poboljšanje angažmana sa kompletom alata i agregacijom podataka, ovo dozvoljava korisniku stvaranje proizvoljnih složenih analiza stanja upravljane memorije JVM -a.

Prema timu, ovo je korisnička ulazna točka u GCToolkitu koja skriva detalje internih modula u nekoliko poziva metoda. Osim API -ja, postoje još dva modula: modul za raščlanjivanje i Vert.x. Modul za raščlanjivanje zasnovan je na zbirci regularnih izraza i koda u koji se piše se smatra najrobilnijim GC analizatorom dnevnika.

Pozadina razmjene poruka zasnovana na Vert.x koristi dvije sabirnice poruka: prvi prenosi podatke iz izvora podataka. Trenutna implementacija prenosi linije dnevnika iz GC datoteke dnevnika. Potrošači ove sabirnice su analizatori koji pretvaraju podatke iz izvora podataka u događaje koji predstavljaju GC ciklus ili sigurnu točku. Ti se događaji objavljuju na drugoj sabirnici poruka: sabirnici događaja. Pretplatnici sabirnica događaja tada mogu biti obaviješteni i obraditi događaje koji ih zanimaju.

Parser emitira diskretne JVM događaje, omogućavajući vam pisanje koda za hvatanje i analizu podataka iz ovih događaja. Kako bi se olakšalo prikupljanje podataka i analiza GC log datoteka, GCToolkit pruža jednostavan okvir za agregaciju. Vrsta podataka koje korisnici žele snimiti ili vrsta analize koju žele izvesti je prema diskreciji korisnika. Na primjer, za snimanje događaja pauze radi analize zauzetosti gomile, agregator bilježi događaj, izdvaja relevantne podatke i prosljeđuje podatke agregaciji.

Ovo dovodi podatke u smislenu analizu, na primjer ukupnu zauzetost hrpe nakon prikupljanja smeća. Dobiveni podaci mogu se prikazati u obliku grafikona, tablice ili drugog prilagođenog formata. Što je još važnije, prema timu, suboptimalna konfiguracija kolektora rezultirat će aplikacijom koja zahtijeva više CPU-a i memorije, dok degradira iskustvo krajnjeg korisnika. Drugim riječima, loše podešen sakupljač često znači skuplje vrijeme rada i nezadovoljne korisnike.

Uz rastući interes Microsofta za Java platformu, fokus u otvorenom kodu takođe povećava prednosti za Java zajednicu. Nakon značajnog doprinosa port -u macOS M1 i Windows -a u Arm -u, Microsoft je potvrdio svoju posvećenost OpenJDK -u predstavljanjem vlastite verzije OpenJDK -a i pridruživanjem radnoj grupi Eclipse Adoptium (ranije poznatoj kao AdoptOpenJDK).

Napravivši GCToolkit otvorenim kodom, Microsoft pokušava pružiti bolji način da se vidi unutrašnjost JVM -a o tome kako postupa s GC -om i dodjelu memorije. Bolja preglednost omogućava bolju konfiguraciju, što koristi i krajnjim korisnicima aplikacije i tehničkom osoblju odgovornom za njeno upravljanje.

Jednostavni API i izlazni mehanizmi laki za korištenje obećavaju poboljšanje zadatka čitanja GC dnevnika pružanjem različitih mehanizama za analizu, ekstrakciju i vizualizaciju podataka.

Izvor: https://devblogs.microsoft.com


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.