[Sottotitolo SEO]
Questa Guida consente agli sviluppatori di giochi di creare giochi mondiali persistenti e ospitare mondi virtuali su AWS utilizzando Amazon GameLift e componenti di back-end serverless. L'architettura utilizza componenti gestiti e serverless per ridurre lo sforzo operativo e scalare in base alla domanda dei giocatori. Gli sviluppatori possono utilizzare questa architettura per iniziare a sviluppare giochi virtuali mondiali persistenti su MacOS e Windows. Questa Guida include l'automazione dell'infrastructure as code (IaC), script di configurazione per l'impostazione delle dipendenze e un esempio di implementazione della Unity client/server.
Diagramma di architettura

Nota: le fasi A-C rappresentano il back-end del sistema e le fasi 1-9 rappresentano il front-end.
Fase A
Amazon EventBridge attiva WorldManager
La funzione AWS Lambda si attiva ogni minuto. La funzione verifica lo stato dei mondi esistenti tramite l'API Amazon GameLift.
Inizia

Distribuisci questa guida
Principi di Well-Architected

Il framework AWS Well-Architected consente di valutare i pro e i contro delle decisioni prese durante il processo di creazione di sistemi nel cloud. I sei principi del framework consentono di apprendere le best practice architetturali per la progettazione e il funzionamento di sistemi affidabili, sicuri, efficienti, convenienti e sostenibili. Grazie allo strumento AWS Well-Architected, disponibile gratuitamente nella Console di gestione AWS, puoi rivedere i tuoi carichi di lavoro rispetto a queste best practice rispondendo a una serie di domande per ciascun principio.
Il diagramma dell'architettura sopra riportato è un esempio di una soluzione creata tenendo conto delle best practice Well-Architected. Per essere completamente Well-Architected, dovresti seguire il maggior numero possibile di best practice.
-
Eccellenza operativa
IlKit di sviluppo per il cloud AWS (AWS CDK) gestisce le implementazioni e gli aggiornamenti utilizzando AWS CloudFormation per controllare gli aggiornamenti e i rollback delle risorse. Ciò riduce gli errori causati dalle modifiche manuali alla configurazione.
Per gli aggiornamenti del parco di Amazon GameLift, CloudFormation creerà un parco sostitutivo. Attenderà che la sostituzione si attivi completamente per accettare il traffico prima di interrompere il vecchio parco.
-
Sicurezza
Il client di gioco utilizza il pool di identità di Amazon Cognito per proteggere l'accesso ai servizi di back-end. Ciò si ottiene firmando le richieste con le credenziali AWS Identity and Access Management (IAM) fornite dal pool di identità. Alle API fornite sono consentite solo richieste autenticate ospitate sul Gateway API. Inoltre, i client di gioco possono accedere solo ai dati del proprio account.
-
Affidabilità
Nel caso in cui il server di gioco (e di conseguenza il mondo di gioco) subisca un arresto, l'architettura sostituirà automaticamente il mondo con uno nuovo, che avrà accesso agli stessi dati persistenti di quel mondo specifico.
-
Efficienza delle prestazioni
Amazon GameLift consente la comunicazione diretta tra client e server per ottimizzare le prestazioni quasi in tempo reale. L'architettura consente agli sviluppatori di ospitare server di gioco in più regioni AWS, riducendo la latenza tra il client e il server di gioco.
-
Ottimizzazione dei costi
L'architettura sfrutta componenti serverless tra cui Gateway API, Lambda e DynamoDB, che consentono di ridurre i costi pagando la quantità esatta di risorse in base al traffico dei giocatori. Inoltre, Amazon GameLift può essere configurato per scalare in base alla richiesta in modo da avere un set minimo di risorse inutilizzate in esecuzione in un dato momento.
-
SostenibilitàQuesta architettura utilizza servizi gestiti e serverless per eseguire solo le risorse necessarie per il carico corrente dei giocatori, riducendo l'impatto individuale sull'ambiente.
Contenuti correlati

[Titolo]
Avvertenza
Il codice di esempio, le librerie software, gli strumenti della linea di comando, le proof of concept, i modelli e le altre tecnologie correlate (comprese tutte le tecnologie di cui sopra fornite dal nostro personale) vengono forniti all'utente sotto forma di contenuto AWS ai sensi dell'Accordo cliente AWS o del relativo accordo scritto stipulato tra l'utente e AWS (a seconda dei casi). Non bisogna utilizzare il contenuto AWS in questione negli account di produzione o sui dati di produzione o altri dati fondamentali. L'utente è responsabile dei test, della sicurezza e dell'ottimizzazione del contenuto AWS, come il codice di esempio, in modo appropriato per l'utilizzo in produzione sulla base delle pratiche e degli standard di qualità specifici. L'implementazione del contenuto AWS può comportare costi AWS per la creazione o l'utilizzo di risorse AWS addebitabili, quali le istanze Amazon EC2 in esecuzione o l'archiviazione Amazon S3.
Eventuali riferimenti a servizi o organizzazioni di terze parti contenuti in questa guida non implicano alcuna approvazione, sponsorizzazione o affiliazione tra Amazon o AWS e dette terze parti. La guida di AWS è un punto di partenza tecnico e l'integrazione con servizi di terze parti può essere personalizzata al momento dell'implementazione dell'architettura.