View a markdown version of this page

Ottimizza la configurazione del runtime del server di gioco su managed GameLift Server Amazon - GameLift Server Amazon

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à.

Ottimizza la configurazione del runtime del server di gioco su managed GameLift Server Amazon

Puoi configurare la configurazione di runtime di una flotta EC2 gestita per eseguire più processi del server di gioco per istanza. Questo utilizza le tue risorse di hosting in modo più efficiente.

In che modo un parco istanze gestisce più processi

Amazon GameLift Serversutilizza la configurazione di runtime di una flotta per determinare il tipo e il numero di processi da eseguire su ciascuna istanza. Una configurazione di runtime contiene almeno una configurazione di processo del server che rappresenta un eseguibile del server di gioco. Puoi definire configurazioni aggiuntive dei processi del server per eseguire altri tipi di processi relativi al tuo gioco. Ogni configurazione di processo server contiene le seguenti informazioni:

  • Il nome e il percorso del file eseguibile della build di gioco.

  • Parametri (facoltativi) da passare al processo all'avvio.

  • Il numero di processi da eseguire contemporaneamente.

Quando un'istanza del parco macchine si attiva, avvia il set di processi server definiti nella configurazione di runtime. Con più processi, l'avvio di ogni processo è Amazon GameLift Servers scaglionato. I processi server hanno una durata limitata. Al termine, Amazon GameLift Servers avvia nuovi processi per mantenere il numero e il tipo di processi server definiti nella configurazione di runtime.

Puoi modificare una configurazione di runtime in qualsiasi momento aggiungendo, modificando o rimuovendo le configurazioni del processo del server. Ogni istanza verifica regolarmente la presenza di aggiornamenti alla configurazione di runtime del parco macchine per implementare le modifiche. Ecco come Amazon GameLift Servers adotta le modifiche alla configurazione di runtime:

  1. L'istanza invia una richiesta Amazon GameLift Servers per la versione più recente della configurazione di runtime.

  2. L'istanza confronta i suoi processi attivi con l'ultima configurazione di runtime e quindi esegue le seguenti operazioni:

    • Se la configurazione di runtime aggiornata rimuove un tipo di processo server, i processi server attivi di questo tipo continuano a essere eseguiti fino al termine. L'istanza non sostituisce questi processi server.

    • Se la configurazione di runtime aggiornata riduce il numero di processi simultanei per un tipo di processo server, i processi server di questo tipo in eccesso continuano a essere eseguiti fino al termine. L'istanza non sostituisce questi processi server in eccesso.

    • Se la configurazione di runtime aggiornata aggiunge un nuovo tipo di processo server o aumenta i processi concorrenti per un tipo esistente, l'istanza avvia nuovi processi server, fino al Amazon GameLift Servers massimo. In questo caso, l'istanza avvia nuovi processi server al termine dei processi esistenti.

Ottimizza un parco macchine per più processi

Per utilizzare più processi su una flotta, procedi come segue:

  • Crea una build che contenga gli eseguibili del server di gioco da distribuire su una flotta, quindi carica la build su. Amazon GameLift Servers Tutti i server di gioco in una build devono funzionare sulla stessa piattaforma e utilizzare l'SDK del server per. Amazon GameLift Servers

  • Creare una configurazione di runtime con una o più configurazioni di processo del server e più processi simultanei.

  • Integra i client di gioco con la versione AWS SDK 2016-08-04 o successiva.

Per ottimizzare le prestazioni della flotta, ti consigliamo di fare quanto segue:

  • Gestisci gli scenari di arresto dei processi del server in modo da Amazon GameLift Servers poter riciclare i processi in modo efficiente. Ad esempio:

    • Aggiungi una procedura di spegnimento al codice del server di gioco che richiami l'API del server. ProcessEnding()

    • Implementa la funzione di callback OnProcessTerminate() nel codice del tuo server di gioco per gestire le richieste di terminazione di. Amazon GameLift Servers

  • Assicurati che si Amazon GameLift Servers spenga e riavvii i processi del server non integri. Segnala lo stato di salute a Amazon GameLift Servers implementando la funzione di OnHealthCheck() callback nel codice del tuo server di gioco. Amazon GameLift Serversarresta automaticamente i processi del server segnalati non integri per tre segnalazioni consecutive. Se non si esegue l'implementazioneOnHealthCheck(), si Amazon GameLift Servers presume che un processo server sia integro, a meno che il processo non risponda a una comunicazione.

Scegli il numero di processi per istanza

Quando decidi il numero di processi simultanei da eseguire su un'istanza, tieni presente quanto segue:

  • Amazon GameLift Servers limita ogni istanza a un numero massimo di processi simultanei. La somma di tutti i processi simultanei per le configurazioni dei processi server di un parco macchine non può superare questa quota.

  • Per mantenere livelli di prestazioni accettabili, il tipo di istanza Amazon EC2 potrebbe limitare il numero di processi che possono essere eseguiti contemporaneamente. Prova diverse configurazioni per il tuo gioco per trovare il numero giusto di processi per il tuo tipo di istanza preferito.

  • Amazon GameLift Serversnon esegue più processi simultanei rispetto al numero totale configurato. Ciò significa che la transizione dalla configurazione di runtime precedente alla nuova configurazione potrebbe avvenire gradualmente.