Statistik kinerja waktu nyata - GameLift Aliran Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Statistik kinerja waktu nyata

Amazon GameLift Streams mengumpulkan statistik kinerja selama sesi streaming aktif, mengukur pemanfaatan sumber daya setiap detik. Gunakan statistik ini untuk memantau kinerja aplikasi Anda, mengidentifikasi kemacetan sumber daya, dan mengoptimalkan pengalaman streaming Anda.

Statistik kinerja mencakup statistik tingkat aplikasi (pemanfaatan CPU dan memori untuk aplikasi spesifik Anda) dan statistik tingkat sistem (pemanfaatan CPU, memori, GPU, dan VRAM untuk infrastruktur komputasi bersama).

Anda dapat menerima statistik kinerja dengan dua cara:

  • Secara real-time selama sesi: Gunakan Amazon GameLift Streams Web SDK untuk menerima statistik saat dikumpulkan. Ini memungkinkan Anda untuk membangun overlay kinerja dan memantau pemanfaatan sumber daya saat Anda berinteraksi dengan aplikasi.

  • Pasca-sesi sebagai file CSV: Saat Anda mengekspor file sesi, statistik disertakan sebagai file. stats/perf_stats_v1.csv Ini memberikan catatan lengkap untuk analisis pasca-sesi dan debugging.

Menerima statistik kinerja

Menerima statistik secara real-time

Untuk menerima statistik performa dalam aplikasi klien Anda selama sesi aktif, setel SharedWithClient parameter true saat memanggil StartStreamSession API. Amazon GameLift Streams Web SDK menyediakan performanceStats callback yang memicu setiap kali statistik baru tiba dari sesi streaming.

Awas

Jangan aktifkan SharedWithClient sesi produksi dengan pengguna akhir. Aktifkan hanya ketika klien dipercaya, seperti untuk debugging dan pengujian internal.

Saat menginisialisasi Amazon GameLift Streams Web SDK, setel clientConnection.performanceStats ke fungsi callback yang akan menerima statistik kinerja.

const gls = new gameliftstreams.GameLiftStreams({ videoElement: document.getElementById('streamVideoElement'), audioElement: document.getElementById('streamAudioElement'), inputConfiguration: { ... }, clientConnection: { ... performanceStats: (perfStats) => { // Your callback logic here console.log('CPU: ' + perfStats.application.cpuNormalized); console.log('Memory: ' + perfStats.application.memoryMB + ' MB'); console.log('GPU: ' + perfStats.system.gpuPercent + '%'); }, } });

Callback menerima PerformanceStats objek yang berisi statistik tingkat aplikasi dan tingkat sistem. Untuk detail tentang struktur antarmuka, lihat dokumentasi Amazon GameLift Streams Web SDK di halaman produk Memulai.

Konsol Amazon GameLift Streams juga menyertakan overlay kinerja bawaan saat menggunakan fitur aliran pengujian, memungkinkan Anda memantau statistik secara real-time tanpa pekerjaan implementasi apa pun.

Anda dapat menggabungkan statistik kinerja dengan statistik WebRTC yang disediakan oleh getVideoRTCStats() dan getAudioRTCStats() fungsi di Amazon Streams Web SDK. GameLift Kombinasi ini memberikan gambaran lengkap tentang kinerja streaming, termasuk statistik jaringan, frame rate klien, dan pemanfaatan sumber daya.

Terima statistik pasca-sesi

Amazon GameLift Streams secara otomatis mengumpulkan statistik kinerja selama setiap sesi streaming. Saat Anda mengekspor file sesi, statistik disertakan seperti stats/perf_stats_v1.csv dalam file ZIP yang diekspor. Ini memberikan catatan lengkap dari semua statistik yang dikumpulkan selama sesi untuk analisis pasca-sesi dan debugging.

Untuk informasi selengkapnya tentang mengekspor file sesi, lihatEkspor file sesi streaming.

Referensi statistik kinerja

Tabel berikut mencantumkan semua statistik kinerja yang dikumpulkan oleh Amazon GameLift Streams. Statistik aplikasi khusus untuk sesi saat ini, sementara statistik sistem bersama mencerminkan pemanfaatan total komputasi bersama berdasarkan sesi pada kelas aliran multi-penyewa.

Statistik dinormalisasi pada kelas aliran multi-penyewa

Amazon GameLift Streams mendukung kelas aliran multi-tenant di mana beberapa sesi dapat berbagi instance komputasi yang sama. Statistik yang dinormalisasi (CPU aplikasi dan pemanfaatan memori) mengukur penggunaan sumber daya aplikasi Anda relatif terhadap pangsa wajar yang dialokasikan. Pangsa wajar dihitung dengan membagi total CPU dan memori yang tersedia pada instance komputasi secara merata berdasarkan penyewaan kelas aliran.

Nilai 1.0 berarti aplikasi Anda menggunakan alokasi saham yang adil. Nilai di bawah 1.0 menunjukkan Anda menggunakan kurang dari alokasi Anda. Nilai yang melebihi 1.0 menunjukkan pemanfaatan berlebihan, yang dapat menyebabkan penurunan kinerja untuk sesi Anda. Pada kelas aliran multi-penyewa (penyewaan lebih besar dari 1), pemanfaatan berlebihan juga dapat memengaruhi sesi lain yang berbagi instance komputasi yang sama.

Nama stat yang tercantum dalam tabel berikut digunakan sebagai header kolom CSV dalam file yang diekspor. Saat menerima statistik secara real-time melalui Amazon GameLift Streams Web SDK, statistik ini tersedia melalui PerformanceStats antarmuka dengan nama properti dalam kasus unta. Untuk struktur antarmuka dan nama properti yang tepat, lihat panduan referensi Amazon GameLift Streams Web SDK API di halaman produk Memulai.

Nama stat (kolom CSV) Deskripsi Lingkup
timestamp Waktu pengukuran dilakukan, dalam format ISO 8601. Semua
app_cpu_normalized Penggunaan CPU aplikasi dinormalisasi terhadap alokasi saham yang adil, di mana 1.0 mewakili batas pembagian wajar target. Penggunaan lebih dari 1.0 menunjukkan pemanfaatan berlebihan, yang dapat menyebabkan masalah kinerja Aplikasi
app_mem_mb Memori total (RAM) yang digunakan oleh aplikasi (diukur dalam MiB) Aplikasi
app_mem_normalized Penggunaan memori aplikasi dinormalisasi terhadap alokasi saham yang adil, di mana 1.0 mewakili batas pembagian wajar target. Penggunaan lebih dari 1.0 menunjukkan pemanfaatan berlebihan, yang dapat menyebabkan masalah kinerja Aplikasi
shared_sys_cpu_pct Persentase total penggunaan CPU di seluruh komputasi bersama. Sistem Bersama
shared_sys_mem_mb Total memori yang digunakan pada instance (diukur dalam MiB). Sistem Bersama
shared_sys_mem_pct Persentase total memori yang digunakan di seluruh komputasi bersama. Sistem Bersama
shared_sys_gpu_pct Persentase total pemanfaatan GPU di seluruh komputasi bersama. Sistem Bersama
shared_sys_vram_mb Total VRAM (memori GPU) yang digunakan pada komputasi bersama (diukur dalam MiB). Sistem Bersama
shared_sys_vram_pct Persentase total VRAM (memori GPU) yang digunakan di seluruh komputasi bersama. Sistem Bersama