Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
GAMEPERF04-BP01 Monitora i processi del server di gioco per rilevare problemi
È possibile eseguire più processi del server di gioco per istanza per utilizzare in modo efficiente le risorse sulle istanze del server di gioco. In tal caso, progetta la tua architettura in modo che un singolo processo del server di gioco che ospita una sessione di gioco non possa avere un impatto negativo su altre sessioni di gioco ospitate sulla stessa istanza. Usa le metriche per capire in che modo il posizionamento del gioco e il tipo di modalità di gioco possono influire sulle prestazioni delle istanze del server di gioco. Incorpora un mix di processi a basso carico (lobby, shop o tutorial per giocatore singolo) e ad alto carico (gameplay classificato, multigiocatore o con abilità elevate) per evitare di individuare l'istanza del server di gioco.
Livello di rischio associato se questa best practice non fosse adottata: elevato
Guida all’implementazione
Monitora l'esperienza del giocatore attraverso metriche lato client e lato server raccogliendo dati telemetrici relativi al tempo di ping e al jitter, al calo dei frame, al tempo di risposta dell'API, agli errori e al completamento del loop di gioco con successo. Collega i timestamp di questi eventi ai problemi di assistenza ai giocatori e ai log del server per identificare i punti deboli nelle prestazioni. Strumenti come Dtrace, ftrace
Implementa il monitoraggio delle risorse limitate disponibili per le istanze del server di gioco in modo da poter generare avvisi quando i singoli processi del server di gioco superano le soglie predeterminate di budget per le risorse. Quando le soglie vengono superate, potresti voler configurare il software del server di gioco in modo da scaricare i log del sistema e del server di gioco pertinenti su un dispositivo di archiviazione durevole, ad esempio una soluzione di registrazione centralizzata, in modo che gli ingegneri del server di gioco possano esaminare questo comportamento. Inoltre, l'istanza del server di gioco deve essere configurata per riportare le metriche di ciascuno dei processi del server di gioco in esecuzione sull'istanza in modo da poter monitorare questi singoli processi del server di gioco oltre alle metriche complessive per l'istanza del server di gioco.
Ad esempio, GameLift fornisce metriche per il monitoraggio delle sessioni di gioco, che possono essere integrate con metriche e log personalizzati specifici del gioco raccolti utilizzando CloudWatchAmazon Agent che puoi configurare sull'istanza del tuo server di gioco. Le tue metriche possono essere visualizzate CloudWatch o esportate in altri strumenti come Amazon Managed Grafana
Passaggi dell’implementazione
-
Esegui più processi del server di gioco per istanza e mescola modalità di gioco a basso e alto carico per evitare gli hot spotting e verificare un utilizzo equilibrato delle risorse.
-
Monitora le metriche lato client e lato server come ping, jitter, cadute di frame e tempi di risposta delle API e mettile in correlazione con i log del server e i problemi segnalati dai giocatori per identificare i punti deboli.
-
Configura il monitoraggio delle risorse per ogni processo del server di gioco, genera avvisi per le violazioni delle soglie e archivia i log in uno spazio di archiviazione durevole per l'analisi utilizzando strumenti come CloudWatch Amazon Managed Grafana.