GithubHelp home page GithubHelp logo

game-startup's Introduction

Game Microservice Architecture and Pipeline

The following architecture and pipelines for cross-platform mobile games consisted of components designed to provide a seamless and secure gaming experience. They supported an audience of 200K students playing cross-platform mobile games that reported student concept mastery and behavioral data to their teachers and admins on a responsive site.

Architecture

alt text

  1. Using CloudFormation for deployments provided a simple and efficient way to create and manage all of the necessary AWS resources, allowing for quick releases and scaling with demand, ensuring that the gaming experience remained smooth and uninterrupted for all users. Static AngularJS web files and WebGL game artifacts along with server code binaries were stored in S3. AngularJS and WebGL provided responsive and high-performing, interactive UIs for teacher dashboards and student games.
  2. EC2 instances ran JVMs for a Scala application. Scala is a powerful language with functional programming features that make it easy to write highly modular, reusable, and well-tested code for asynchronous data processing, leading to faster dev times and reduced maintenance/testing costs, an ideal choice for the backend of a gaming application with heavy data reporting needs.
  3. The use of Nginx as a reverse proxy helped to distribute the workload evenly across the EC2 instances, improving the overall performance and reliability of the system. REST APIs were secured by API keys and TLS encryption ensuring that all data transmitted was kept private and secure, protecting sensitive user data.
  4. MongoDB is a highly scalable, flexible NoSQL DB, making it an excellent choice for gaming applications that require fast and reliable data access. Its ability to handle large amounts of unstructured data allows for the storage and retrieval of complex data that changed regularly due to the evolutions of the games to improve learning and fun. Leveraged a JSON coast-to-coast backend design to maximize flexibility for game devs.
  5. The ELK stack was cost-effective while providing visibility across the system.

SDLC Pipeline

The entire SDLC pipeline along with the major tools and services we used are included below. Rather than exhaustively explain, here's some cool features:

  1. Unity Cloud Build was managed by Unity itself which meant it remained compabitible as new versions were released. In addition to providing binary files that were smaller than those we generated on local computers, it also provided online previews that we leveraged for certain user tests on bleeding-edge features.
  2. The ELK stack was cost-effective for the startup while providing visibility across the system.

alt text

Gratitude

Thanks to Coram Bryant and Stephen Heeps for reviewing the architecture, ensuring accuracy, and teaching me new things in the process! Thanks to you too ChatGPT for initial drafts of the text.

game-startup's People

Contributors

gadauto3 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.