全部产品
Search
文档中心

Realtime Compute for Apache Flink:Pemantauan kinerja penyebaran

更新时间:Jun 19, 2025

Anda dapat memantau kinerja penyebaran yang sedang berjalan berdasarkan metrik JobManager dan TaskManagers terkait. Sebagai contoh, Anda dapat melihat pemanfaatan CPU, memori, dan thread. Hal ini membantu mengidentifikasi potensi masalah seperti kesalahan kode, inisialisasi kelas yang lambat, atau pemanfaatan sumber daya tinggi oleh kelas tertentu. Topik ini menjelaskan cara melihat kinerja JobManager dan TaskManagers dari penyebaran yang sedang berjalan.

Prasyarat

Izin yang diperlukan telah diberikan kepada akun Alibaba Cloud atau Pengguna Manajemen Akses Sumber Daya (RAM) yang digunakan untuk mengakses namespace Realtime Compute for Apache Flink Anda. Untuk informasi lebih lanjut, lihat Memberikan Izin pada Namespace.

Batasan

  • Hanya Realtime Compute for Apache Flink yang menggunakan Ververica Runtime (VVR) 4.0.11 atau versi lebih baru yang mendukung pemantauan kinerja penyebaran.

  • Fitur pemantauan kinerja hanya berlaku untuk penyebaran yang sedang berjalan. Anda tidak dapat melihat kinerja penyebaran historis.

Prosedur

  1. Masuk ke Konsol Realtime Compute for Apache Flink.

  2. Temukan ruang kerja yang ingin Anda kelola dan klik Console di kolom Actions.

  3. Di panel navigasi sebelah kiri, klik O&M > Deployments.

  4. Di halaman Penyebaran, temukan penyebaran yang ingin Anda kelola dan klik namanya. Di halaman yang muncul, klik tab Logs.

  5. Lihat kinerja penyebaran di tab-tab yang dijelaskan dalam tabel berikut.

    Tab

    Deskripsi

    Grafik Api

    Graf nyala api dapat memvisualisasikan hambatan kinerja selama eksekusi program perangkat lunak. Graf ini menggunakan struktur berlapis untuk menampilkan tumpukan panggilan dan menyoroti segmen kode yang paling sering dieksekusi. Untuk informasi lebih lanjut, lihat Flame Graphs.

    Graf api menyediakan metode intuitif untuk mengidentifikasi fungsi intensif CPU, yang juga dikenal sebagai titik panas, dalam sebuah program. Ini membantu Anda melakukan optimasi yang ditargetkan.

    Memori

    Anda dapat melihat penggunaan memori di ruang yang berbeda dari Java Virtual Machine (JVM).

    Thread

    Anda dapat melihat detail setiap thread dan memilih thread untuk pengambilan sampel dan analisis.

    Thread Dump

    Anda dapat melihat informasi tentang semua thread pada waktu saat ini.

Gunakan alat analisis kinerja

Graf Api

Graf api mungkin gagal menangkap konteks eksekusi lengkap karena dibuat berdasarkan data sampel dalam banyak kasus. Untuk meningkatkan akurasi diagnosis hambatan, disarankan menggunakan graf api bersama dengan alat analisis kinerja lainnya sambil meninjau ulang kode aktual Anda. Anda dapat mengidentifikasi hambatan kinerja berdasarkan faktor-faktor berikut:

  • Konsumsi CPU: Dalam banyak kasus, bingkai yang lebih lebar di grafik menunjukkan bahwa panggilan fungsi tingkat atas terkait mengonsumsi lebih banyak sumber daya CPU daripada panggilan lain, yang dapat menyebabkan masalah kinerja.

  • Alokasi memori: penggunaan memori fungsi yang berbeda.

  • Kunci: potensi masalah kinerja yang disebabkan oleh persaingan kunci atau deadlock.

  • ITimer: konsumsi CPU semua thread dalam interval tertentu.

查看作业性能.jpg

Prosedur untuk menggunakan graf api guna mengidentifikasi potensi hambatan kinerja:

  1. Lihat struktur graf api.

    Graf api terdiri dari beberapa lapisan bingkai stack. Setiap lapisan mewakili level dalam tumpukan panggilan. Lapisan bawah menunjukkan titik masuk ke aplikasi, dan lapisan atas menunjukkan panggilan fungsi tingkat lebih tinggi.

  2. Fokus pada lebar dan frekuensi bingkai stack.

    Bingkai stack yang lebih lebar menunjukkan bahwa fungsi tersebut mengonsumsi lebih banyak waktu CPU daripada fungsi lain, yang sering menyebabkan masalah hambatan. Jika bingkai stack tertentu sering muncul, fungsi yang sesuai dipanggil berulang kali, yang dapat menyebabkan masalah kinerja.

  3. Tentukan level tumpukan panggilan.

    Posisi vertikal bingkai stack menunjukkan level tumpukan panggilan. Dalam banyak kasus, bingkai lebar di bagian bawah menunjukkan bahwa masalah terjadi pada tahap awal atau di bagian utama program, sedangkan bingkai lebar di bagian atas menunjukkan masalah terkait fungsi tertentu.

  4. Tinjau ulang kode Anda.

    Tinjau ulang kode Anda dan optimalkan implementasi titik panas yang Anda identifikasi di langkah-langkah sebelumnya. Sebagai contoh, Anda dapat mengurangi jumlah loop, meningkatkan struktur data, dan mengurangi operasi sinkronisasi.

  5. Jalankan tes kinerja.

    Jalankan tes kinerja untuk memvalidasi optimasi kode Anda. Anda dapat membandingkan graf api sebelum dan sesudah optimasi untuk memeriksa apakah hambatan telah dihilangkan.

null

Jika fungsi non-Java ada di kode Anda, bingkai stack yang sesuai dilabeli dengan kata kunci "unknown" di graf api. Untuk informasi lebih lanjut, kunjungi GitHub.

Thread

  1. Pergi ke tab Debug.

    • Kinerja JobManager

      Di tab Logs, klik tab Job Manager dan klik tab Debug.

    • Kinerja TaskManagers yang sedang berjalan

      Di tab Logs, klik tab Running Task Managers, klik nilai di kolom Path, ID, dan kemudian klik Debug.

  2. Pergi ke tab Threads, temukan operator yang ingin Anda kelola dan klik Sample di kolom Actions. Di jendela yang muncul, tunggu beberapa saat agar operator diambil sampelnya. Kemudian, periksa tumpukan thread. Gambar berikut menunjukkan tumpukan thread yang diakses oleh Gemini State.

    查看作业性能2.jpg

Thread Dump

  1. Di tab Logs, klik tab Running Task Managers dan klik nilai di kolom Path, ID.

  2. Pergi ke tab Thread Dump, cari operator yang digunakan untuk memproses data state berdasarkan nama, dan periksa apakah tumpukan thread yang berisi informasi interaksi antara operator dan GeminiStateBackend atau RocksDBStateBackend ditampilkan di bawah operator.

    查看作业性能3.jpgAnda dapat melihat nama operator di tab Status.

    查看作业性能4.jpg

Referensi

  • Fitur diagnostik penyebaran cerdas dapat membantu Anda memantau status kesehatan penyebaran Anda dan memastikan stabilitas serta keandalan bisnis Anda. Untuk informasi lebih lanjut, lihat Melakukan Diagnostik Penyebaran Cerdas.

  • Anda dapat menggunakan konfigurasi penyebaran dan optimasi Flink SQL untuk meningkatkan kinerja penyebaran Flink SQL. Untuk informasi lebih lanjut, lihat Optimasi Flink SQL.