JDK reys yozuvchisi - JDK Flight Recorder

JDK reys yozuvchisi ichiga o'rnatilgan voqea yozuvchisi Java virtual mashinasi. Uni tijorat samolyotidagi Data Flight Recorder (Black Box) ning dasturiy ta'minoti ekvivalenti deb hisoblash mumkin. Bu haqida ma'lumot to'playdi JVM o'zi va JVM-da ishlaydigan dastur. Ma'lumotlarni olishning xilma-xilligi mavjud, masalan, profilni profilaktika qilish, profilaktika ajratish va axlat yig'ish bilan bog'liq voqealar. The JDK reys yozuvchisi minimallashtirish uchun mo'ljallangan edi Kuzatuvchining ta'siri profilli tizimda va ishlab chiqarish tizimlarida doimo yonib turishi kerak. Texnologiya 2018 yilda ochilgan.

Parvoz yozuvlarini tahlil qilish va vizualizatsiya qilish, odatda, yordamida amalga oshiriladi JDK missiyasini boshqarish.

Texnologiya

Yozuv fayli ma'lumotlar ikkilik qismlaridan iborat. Har bir bo'lak o'zini o'zi tavsiflaydi va o'z ichiga oladi. Boshqacha qilib aytganda, ma'lumotlardan foydalanish uchun zarur bo'lgan metadata (masalan, ma'lumotlar turi va har bir atributning tarkib turi) (voqealarni nafaqat tahlil qilish, balki ularni ishlatish). Shuningdek, masalan, orqali hal qilinishi kerak bo'lgan barcha qiymatlar. doimiy hovuzlar ham qismga kiritilgan.

JFR samaradorligini oshirish uchun turli xil texnologiyalar mavjud, masalan:

  • Ikkilik tasvirlar, satrlarga oldinga va orqaga tarjimalar yo'q, buferlar diskka samarali uzatiladi
  • Aksariyat voqealar mahalliy mahalliy buferlarga yoziladi
  • Ba'zi platformalarda o'zgarmasdir TSC vaqtni samarali shtamplash uchun ishlaydi
  • Siqishni butun sonli sxemasi, xotirada va fayl hajmini ushlab turish uchun
  • JVM-da amalga oshirilgandan buyon ko'p ma'lumotlar tezda mavjud bo'lib, yoki ma'lumotlar tezda mavjud bo'lganda chiqarilib, xarajatlarni kamaytiradi

Agar ikkilik yozuvni ga aylantirsa JSON, u yozilgan uzunlik va tarkibga qarab, ikki daraja yoki undan kattagina osongina portlashi mumkin.

Standart shablondan foydalangan holda JFR-ning kutilayotgan ishlash xarajatlari foizdan kamroq, profil shablonlari uchun esa ikki foizdan kam.

Tarix

JDK Flight Recorder JRockit Flight Recorder sifatida boshlangan va dastlab JVM ning o'zini yaxshilash uchun foydalaniladigan ma'lumotlarni yig'ish vositasi sifatida ishlatilgan.[1][2] Oracle Sun Microsystems-ni sotib olgandan so'ng, JRockit Flight Recorder-ga Java Flight Recorder rebrendingi berildi.[3] 2018 yilda Java Flight Recorder ochiq manbali va OpenJDK 11 ning bir qismi sifatida chiqarilgan.[4] Ochiq manbadan olinganida, Java savdo belgisi bilan bog'liq muammolar tufayli JDK Flight Recorder rebrendlangan.

Versiyalar

Bular mavjud JFR fayl formatining versiyalari. U mavjud bo'lgan barcha versiyalarni emas, balki HotSpot-ga ko'chib o'tgandan keyin JVM-larda mavjud bo'lgan versiyalarni o'z ichiga oladi.

JFR versiyasiJDK versiyalari
v0.9Oracle JDK 7 (u4 +), Oracle JDK 8
v1.0Oracle JDK 9, Oracle JDK 10
v2.0Oracle JDK 11+, Open JDK 11+, Azul JDK 8 va Azul JDK 11+

Shuningdek qarang

Adabiyotlar

  1. ^ "JRockit Flight Recorder ish vaqtining qo'llanmasi" (PDF). Olingan 22 yanvar 2019.
  2. ^ Oracle JRockit: aniq qo'llanma. Packt Pub. p. 588. ISBN  1847198066.
  3. ^ "Java Flight Recorder ish vaqti bo'yicha qo'llanma". Olingan 22 yanvar 2019.
  4. ^ "JEP 328: Parvoz yozuvchisi". Olingan 22 yanvar 2019.

Tashqi havolalar