Ringkasan Cloud Profiler

Memahami performa sistem produksi sangatlah sulit. Mencoba mengukur performa di lingkungan pengujian biasanya gagal mereplikasi tekanan pada sistem produksi. Microbenchmarking bagian aplikasi Anda terkadang dapat dilakukan, tetapi biasanya juga gagal mereplikasi beban kerja dan perilaku sistem produksi.

Pembuatan profil sistem produksi secara berkelanjutan adalah cara yang efektif untuk menemukan tempat resource seperti siklus CPU dan memori digunakan saat layanan beroperasi di lingkungan kerjanya. Namun, pembuatan profil menambahkan beban tambahan pada sistem produksi: agar menjadi cara yang dapat diterima untuk menemukan pola penggunaan resource, beban tambahan pembuatan profil harus kecil.

Cloud Profiler adalah profiler statistik dengan overhead rendah yang terus mengumpulkan informasi penggunaan CPU dan alokasi memori dari aplikasi produksi Anda. Cloud Profiler mengatribusikan informasi tersebut ke kode sumber yang membuatnya, membantu Anda mengidentifikasi bagian aplikasi yang paling banyak menggunakan resource, dan menunjukkan karakteristik performa aplikasi Anda.

Jenis pembuatan profil yang tersedia

Cloud Profiler mendukung berbagai jenis pembuatan profil berdasarkan bahasa yang digunakan untuk menulis program. Tabel berikut merangkum jenis profil yang didukung berdasarkan bahasa:

Jenis profil Go Java Node.js Python
Waktu CPU YY Y
Heap YY Y
Heap yang dialokasikan Y
Pertentangan Y
Rangkaian pesan Y
Waktu proses Y YY

Untuk mengetahui informasi lengkap tentang persyaratan bahasa dan batasan apa pun, lihat halaman cara menggunakan bahasa. Untuk mengetahui informasi selengkapnya tentang jenis profil ini, lihat Konsep pembuatan profil.

Konfigurasi yang didukung

Saat membuat instrument aplikasi untuk mengambil data profil, Anda menyertakan agen pembuatan profil khusus bahasa. Tabel berikut merangkum lingkungan yang didukung:

Lingkungan Go Java Node.js Python
Compute Engine YYYY
Google Kubernetes Engine YYYY
Lingkungan fleksibel App Engine YYYY
Lingkungan standar App Engine YYYY
Dataproc Y
Dataflow YY
Di luar Google Cloud YYYY

Tabel berikut meringkas sistem operasi yang didukung:

Sistem operasi Go Java Node.js Python
Implementasi library C standar Linux
glibc
YY YY
Implementasi library C standar Linux
musl
YY (Alfa) YY (Alfa)

Dampak performa

Cloud Profiler membuat satu profil dengan mengumpulkan data pembuatan profil, biasanya selama 10 detik, setiap 1 menit untuk satu instance layanan yang dikonfigurasi di satu zona Compute Engine. Misalnya, jika layanan GKE Anda menjalankan 10 replika pod, dalam periode 10 menit, sekitar 10 profil akan dibuat, dan setiap pod akan dibuat profilnya sekitar sekali. Periode pembuatan profil dilakukan secara acak, sehingga ada variasi. Lihat Pengumpulan profil untuk mengetahui informasi selengkapnya.

Overhead pembuatan profil alokasi CPU dan heap pada saat pengumpulan data kurang dari 5 persen. Dengan amortisasi selama waktu eksekusi dan di beberapa replika layanan, overhead biasanya kurang dari 0,5 persen, sehingga menjadi opsi yang terjangkau untuk pembuatan profil yang selalu aktif di sistem produksi.

Komponen

Cloud Profiler terdiri dari agen pembuatan profil, yang mengumpulkan data, dan antarmuka konsol di Google Cloud, yang memungkinkan Anda melihat dan menganalisis data yang dikumpulkan oleh agen.

Membuat profil agen

Anda menginstal agen di virtual machine tempat aplikasi Anda berjalan. Agen biasanya disertakan sebagai library yang Anda lampirkan ke aplikasi saat menjalankannya. Agen mengumpulkan data pembuatan profil saat aplikasi berjalan.

Untuk informasi tentang cara menjalankan agen Cloud Profiler, lihat:

Antarmuka profiler

Setelah agen mengumpulkan beberapa data pembuatan profil, Anda dapat menggunakan antarmuka Profiler untuk melihat korelasi statistik penggunaan CPU dan memori dengan area aplikasi Anda.

Antarmuka Cloud Profiler

Data profil disimpan selama 30 hari, sehingga Anda dapat menganalisis data performa untuk periode hingga 30 hari terakhir. Profil dapat didownload untuk penyimpanan jangka panjang.

Kuota dan batas

Untuk mengetahui informasi tentang cara melihat dan mengelola kuota Profiler, lihat Kuota dan batas.

Keamanan data

Cloud Profiler adalah layanan yang didukung Kontrol Layanan VPC. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Kontrol Layanan VPC.