Microsoft, GCToolkit kaynak kodunu yayınladı

Microsoft birkaç gün önce şu haberi yayınladı aracının kaynak kodunu yayınladı «GCToolkit», tüm GCToolkit kodunun birlikte bulunduğu Java Çöp Toplama günlük dosyalarını ayrıştırmak için bir kitaplık kümesidir. kullanılabilir MIT lisansı altında GitHub'da.

GCToolkit üç Java modülünden oluşur API'leri, GC günlük dosyası ayrıştırıcılarını ve JVM'de duyarlı uygulamalar oluşturmak için Vert.x araç takımı tabanlı bir mesaj arka plakasını kapsar. Bu yardımcı programla, kullanıcılar JVM'de yönetilen belleğin durumuna ilişkin rastgele ve karmaşık taramalar oluşturabilir.

Adından da anlaşılacağı gibi, bu, Java çöp toplama (GC) günlük dosyalarını ayrıştırmak ve bunları ayrı olaylarda ayrıştırmak için bir dizi kitaplıktır. Etkileşimi geliştirmek için bir API sunun araç takımı ve veri toplama ile bu kullanıcının JVM'nin yönetilen belleğinin durumuna ilişkin rastgele karmaşık analizler oluşturmasına olanak tanır.

Ekibe göre, bu, birkaç yöntem çağrısında dahili modüllerin ayrıntılarını gizleyen GCToolkit'teki kullanıcı giriş noktasıdır. API'ye ek olarak, iki modül daha var: ayrıştırma modülü ve Vert.x. Ayrıştırıcı Modülü, düzenli ifadeler ve kodlara yazılan bir koleksiyona dayanır. mevcut en sağlam GC log analizörü olarak kabul edilir.

Mesajlaşma arka ucuna dayalı Vert.x iki mesaj veriyolu kullanır: birincisi bir veri kaynağından veri iletir. Geçerli uygulama, GC günlük dosyasından günlük satırlarını geçirir. Bu veri yolunun tüketicileri, veri kaynağından gelen verileri bir GC döngüsünü veya güvenli noktayı temsil eden olaylara dönüştüren analizörlerdir. Bu olaylar ikinci mesaj veriyolunda yayınlanır: olay veriyolu. Olay veri yolu aboneleri daha sonra bilgilendirilebilir ve ilgilerini çeken olayları işleyebilir.

Ayrıştırıcı, ayrık JVM olayları yayar, bu olaylardan verileri yakalamak ve analiz etmek için kod yazmanıza olanak tanır. GC günlük dosyalarının veri yakalamasını ve analizini kolaylaştırmak için GCToolkit basit bir toplama çerçevesi sağlar. Kullanıcıların yakalamak istedikleri veri türü veya gerçekleştirmek istedikleri analiz türü kullanıcının takdirindedir. Örneğin, yığın doluluğunu analiz etmek için duraklama olaylarını yakalamak için toplayıcı olayı yakalar, ilgili verileri çıkarır ve verileri toplamaya iletir.

Bu, verileri anlamlı bir analizde bir araya getirir, örneğin çöp toplamadan sonra toplam yığın doluluğu. Elde edilen veriler bir grafik, tablo veya daha kullanıcı dostu başka bir formatta sunulabilir. Daha da önemlisi, ekibe göre, yetersiz bir toplayıcı yapılandırması, son kullanıcı deneyimini düşürürken daha fazla CPU ve bellek gerektiren bir uygulamaya neden olacaktır. Başka bir deyişle, kötü ayarlanmış bir toplayıcı genellikle daha pahalı çalışma süresi ve memnun olmayan kullanıcılar anlamına gelir.

Microsoft'un Java platformuna artan ilgisiyle, odak açık kaynakta da Java topluluğu için faydaları artırıyor. MacOS M1 ve Windows to Arm'a önemli katkılarda bulunduktan sonra Microsoft, kendi OpenJDK sürümünü tanıtarak ve Eclipse Adoptium çalışma grubuna (önceden AdoptOpenJDK olarak biliniyordu) katılarak OpenJDK'ya olan bağlılığını yeniden teyit etti.

GCToolkit'i açık kaynak yaparak, Microsoft, GC'yi nasıl ele aldığı konusunda JVM'nin içindekileri görmenin daha iyi bir yolunu sağlamaya çalışıyor ve bellek tahsisi. Daha iyi görünürlük, hem uygulamanın son kullanıcılarına hem de yönetiminden sorumlu teknik personele fayda sağlayan daha iyi yapılandırmaya olanak tanır.

Basit API ve kullanımı kolay çıktı mekanizmaları, verileri analiz etmek, ayıklamak ve görselleştirmek için çeşitli mekanizmalar sağlayarak GC günlüklerini okuma görevini iyileştirmeyi vaat ediyor.

kaynak: https://devblogs.microsoft.com


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: AB Internet Networks 2008 SL
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.