JProfiler adalah pemenang penghargaan all-in-one Jawa profiler. Ini GUI intuitif membantu Anda menemukan kemacetan kinerja, dijabarkan kebocoran memori dan menyelesaikan masalah threading.
Meskipun JProfiler memiliki set fitur yang kuat, itu adalah profiler Jawa yang sangat mudah digunakan! Antarmuka pengguna JProfiler menyediakan pandangan terpadu pada aplikasi profil dan menempatkan semua informasi yang Anda butuhkan di ujung jari Anda dengan hirarki intuitif penayangan.
Mengkonfigurasi aplikasi Anda untuk profil
Ketika memulai JProfiler, pusat start dibesarkan. Di sini Anda dapat mengatur dan mulai sesi profil Anda. Untuk mengkonfigurasi aplikasi Anda untuk profil, mengubah ke "sesi New" tab dan klik pada tombol sesi New. Masukkan informasi yang diperlukan ke dalam dialog sesi konfigurasi seperti yang dijelaskan di bawah ini dan pilih Ok untuk memulai profiling. Itu semua yang diperlukan. Perhatikan tombol Bantuan yang muncul pada semua dialog JProfiler yang menampilkan penjelasan sensitif konteks semua fitur.
Sementara dialog konfigurasi menampilkan banyak pilihan yang Anda tidak akan mau ketinggalan setelah menjadi akrab dengan JProfiler, memasuki potongan dasar informasi benar-benar sangat sederhana:
1. Masukkan nama untuk sesi Anda.
2. Masukkan nama kelas utama Anda.
3. Masukkan jalur kelas Anda.
4. Tekan OK.
Sebelum profiling sebenarnya dimulai, dialog pengaturan profil ditampilkan di mana Anda dapat memilih fokus untuk profil Anda berjalan. Meskipun profiling menghasilkan overhead saat menjalankan aplikasi Anda, Anda dapat menguranginya dengan memilih pengaturan yang JProfiler hanya mencatat informasi yang menarik untuk Anda.
Jika Anda ingin menyempurnakan pengaturan profil Anda, [Edit] tombol menampilkan dialog dengan semua opsi konfigurasi yang tersedia untuk profiling.
Amati kelas dan alokasi
Untuk mengetahui apa yang sedang terjadi di heap dalam hal objek dan kelas, beralih ke kelas memantau. Ini memberi Anda update terus menerus dan memungkinkan Anda menetapkan tanda untuk mengamati perubahan dari waktu ke waktu. Untuk melihat referensi, alokasi dan data objek untuk pilihan Anda, Anda dapat mengambil snapshot dengan mengklik kamera di toolbar JProfiler ini.
Jika Anda ingin tahu di mana benda Anda dialokasikan, Anda dapat pergi ke monitor alokasi. Di sini, Anda dapat memeriksa pohon panggilan dan mencari tahu apa panggilan metode telah menyebabkan alokasi kelas atau paket yang dipilih. Sama seperti di monitor alokasi, Anda dapat menampilkan data ini untuk hidup dan sampah benda dikumpulkan.
Gambaran terakumulasi pada metode bertanggung jawab untuk alokasi diberikan oleh alokasi hot spot melihat. Setiap hot spot dapat diperluas dan backtraces yang mengarah pada permintaan dari hot spot akan ditampilkan. Anda juga dapat menandai nilai saat ini dan melihat perbedaan alokasi dari waktu ke waktu.
Cari kebocoran memori
JProfiler ini tumpukan walker bekerja seperti browser: ini akan menampilkan satu set saat objek yang dapat diubah dengan menambahkan tahap seleksi dengan [Gunakan terpilih] tombol. Anda dapat memeriksa objek saat ditetapkan dalam empat pandangan dari tumpukan walker.
Pada tampilan kelas, Anda dapat memilih satu atau beberapa kelas dan menambahkan langkah seleksi. Objek set baru akan hanya berisi contoh yang dipilih. Hal ini sering hal pertama yang Anda ingin lakukan setelah mengambil snapshot. Anda dapat melakukan langkah ini secara otomatis dengan menerapkan tumpukan walker dari kelas Monitor.
Alokasi pandangan tumpukan walker menunjukkan pohon alokasi dan alokasi daftar hot spot dari objek saat set. Anda dapat menambahkan langkah seleksi untuk satu atau beberapa tempat alokasi atau hot spot. Objek set baru kemudian akan dibatasi pada kasus yang dipilih.
Bila Anda sedang mencari penyebab kebocoran memori, pandangan referensi adalah pandangan yang paling penting dalam JProfiler. Di sini, Anda dapat mengetahui mengapa sebuah objek belum sampah dikumpulkan. Gunakan "Tampilkan path ke GC root" berfungsi untuk menunjukkan di mana JVM hang ke contoh yang dipilih.
Tidak hanya tumpukan walker pertama Anda berhenti untuk menemukan kebocoran memori, itu juga membuat untuk fasilitas debugging yang sangat baik. Dalam tampilan data, Anda dapat memeriksa contoh, array dan kelas di objek saat set dan menavigasi sepanjang referensi. Ada banyak situasi di mana pendekatan debugging biasa akan gagal dan JProfiler akan membantu Anda mencari tahu.
Memperbesar hambatan kinerja
Mengontrol kinerja aplikasi Anda mungkin didorong oleh kualitas layanan atau kendala dengan jaminan kualitas umum, pandangan CPU JProfiler ini meminjamkan diri secara alami untuk kedua pendekatan.
Untuk merekam data CPU, Anda beralih ke bagian CPU dan klik pada tombol perekaman di tool bar JProfiler ini. Pandangan pertama di bagian CPU menunjukkan pohon doa, terakumulasi untuk semua benang. Untuk menemukan kinerja terkait masalah bintik-bintik, cukup ikuti persentase besar ketika membuka node pohon. Juga, kali mutlak dan jumlah doa yang ditampilkan untuk setiap node dapat membantu Anda dalam mendapatkan perasaan untuk situasi. Setelah Anda menjadi akrab dengan JProfiler, Anda mungkin ingin menyesuaikan pandangan ini cocok terbaik preferensi pribadi Anda.
Pohon Doa adalah pandangan top-down pada panggilan metode aplikasi Anda. Sudut pandang ini sangat berguna ketika Anda mengalami hambatan kinerja aktual dalam aplikasi Anda. Jika Anda ingin meningkatkan kinerja secara keseluruhan, tampilan bottom-up mungkin lebih berlaku.
Jenis pandang - yang disebut pandangan hot spot - menunjukkan metode di mana sebagian besar waktu dihabiskan. Dengan membuka node ini Anda mendapatkan backtraces yang menunjukkan berbagai jalur doa bersama-sama dengan persentase kontribusi mereka. Perhatikan bahwa secara default, metode panggilan dalam kelas inti Java tidak ditampilkan secara terpisah - masing-masing panggilan perpustakaan Anda diperlakukan sebagai buram. Anda dapat mengubah perilaku ini dengan menonaktifkan set filter yang sesuai.
Metode grafik menggabungkan kedua sudut pandang. Masuk dan keluar panggilan metode disajikan dengan cara yang sama. Untuk beberapa situasi, metode grafik dapat memberikan wawasan yang lebih dari pohon doa dan tampilan hot spot. Strategi terbaik adalah dengan menggunakan pandangan doa dan hot spot pertama dan beralih ke grafik metode untuk analisis rinci.
Memecahkan masalah-thread terkait
Benang dapat menjadi sangat sulit untuk debug, terutama jika Anda tidak memiliki informasi yang cukup pada urutan aktual dan status benang dalam aplikasi Anda. Pandangan benang JProfiler ini menyediakan Anda dengan tepat pengetahuan ini.
Pandangan sejarah benang menunjukkan update terus menerus dari jalur hidup dari semua thread pada sumbu horisontal. Nama-nama benang ditampilkan pada sumbu vertikal di urutan penciptaan mereka. Setiap warna menandakan status thread yang berbeda. Oranye berarti bahwa benang sedang tidur, berdiri hijau untuk benang runnable sementara merah ditampilkan jika benang sedang menunggu monitor. Anda dapat memperbesar dan keluar untuk tingkat detail yang Anda inginkan atau memiliki waktu sumbu sesuai dengan ukuran jendela Anda secara otomatis.
Jika Anda lebih tertarik pada apa yang terjadi sekarang, pandangan benang Monitor adalah tempat yang tepat untuk melihat. Di sini, Anda bisa menyortir benang, menyaring sehubungan dengan benang status dan melihat informasi tambahan pada setiap thread.
Jika Anda pernah memiliki kebuntuan dalam aplikasi Anda, grafik deteksi kebuntuan akan membantu Anda menganalisis benang terlibat dan situasi penguncian. Kebuntuan sederhana seperti yang ditunjukkan bisa bekerja dengan tangan dari pandangan lain, tetapi untuk kebuntuan rumit yang melibatkan sejumlah besar benang pandangan ini sangat diperlukan.
Mengurangi memantau umum pertengkaran dan debugging urutan mengunci membutuhkan tampilan rinci dari penggunaan monitor yang saat ini dan sejarah dari semua peristiwa-monitor terkait. JProfiler memiliki keduanya. Di bawah ini Anda melihat sejarah penggunaan monitor yang yang menunjukkan acara pemblokiran bersama dengan tumpukan jejak benang tunggu.
Mengawasi JVM Anda
Pemantauan parameter kumulatif mesin virtual bisa menjadi kegiatan yang sangat bermanfaat, bahkan jika segala sesuatu tampaknya baik-baik. Mengukur dan mengamati parameter seperti ukuran tumpukan, jumlah objek, kelas dimuat dan nomor benang dapat menunjukkan tren berbahaya dan perilaku bermasalah untuk melihat keluar untuk. Dalam pandangan bagian VM telemetri yang, JProfiler memiliki berbagai kontrol telemetri yang menyediakan Anda dengan informasi yang Anda butuhkan untuk tetap satu langkah di depan.
Jumlah objek di heap, terbelah array dan non-array. Ini adalah pertama Anda berhenti jika Anda mencurigai kebocoran memori. Semua benda dengan referensi hidup disertakan, serta mereka yang Rintisan tetapi sampah tidak memiliki kesempatan untuk mengumpulkan belum.
Kegiatan pengumpul sampah yang menampilkan dibebaskan dan dipindahkan benda. Jika aplikasi Anda meronta-ronta tumpukan berlebihan, ini akan muncul di sini. Pindah sejumlah besar benda menempatkan beban yang tinggi pada mesin virtual dan dapat menyebabkan membeku sementara. Sebagian besar ini terjadi ketika mesin virtual memperbesar heap.
Jumlah thread di mesin virtual, terbelah benang aktif dan tidak aktif. Ini berguna jika Anda membuat sejumlah besar benang dan membutuhkan informasi tentang perubahan jumlah mereka dan berapa banyak dari mereka benar-benar menjalankan
Apa yang baru dalam rilis ini:.
- Versi ini menambahkan dukungan untuk Java 7 (file kelas dikompilasi dengan -target 1,7), & quot; Copy ke clipboard & quot; tombol pada panel detil untuk & quot; Fields & quot; dan & quot;. Metode & quot ;, serta Quicklinks untuk dokumentasi opcode di bagian bawah layar bytecode
Komentar tidak ditemukan