Sign inSign up

dgkanatsios/simplenodejsudp

By dgkanatsios

•Updated over 7 years ago

simplenodejsudp

Image
0

2.2K

dgkanatsios/simplenodejsudp repository overview

Go Report Card Build Status Software License PRs Welcome unofficial Google Analytics for GitHub codecov

⁠Scaling multiplayer Dedicated Game Servers on Azure Kubernetes Service

Scaling Dedicated Game Servers (DGS) is a hard problem. They're stateful (having the bulk of player data stored in server memoty), can't be explicitly shut down (since players might be still enjoying their game) and, as a rule of thumb, their connection with the players must be of minimal latency, especially for real-time multiplayer games.

This repository aims to provide a solution/guidance/building blocks for managing containerized dedicated game servers using the Kubernetes⁠ orchestrator on Azure using the managed Azure Kubernetes Service (AKS)⁠. However, you could probably use parts of the project to scale memory-stateful workloads.

~ This is currently a work in progress. Not recommended for production use ~

⁠Documentation

⁠Other

⁠Demos

In order to demonstrate this project, we've built a simple "echo" UDP server in Node.js and we've also adapted the OpenArena⁠ open source game so it can work with our solution. Both Dockerfiles are stored in the demos folder whereas the corresponding Kubernetes deployment YAML files are located in the artifacts/examples folder.

⁠Docker Hub Images

Images used for this project are hosted on Docker Hub:

⁠Thanks

To Brian Peek⁠ and Andreas Pohl⁠ for the countless discussions we had (and still have!) about scaling DGSs. Moreover, I'd like to express my gratitude to the awesome people on #sig-api-machinery channel on Kubernetes Slack⁠ for answering a lot of my questions during the development of this project.


This is not an official Microsoft product.

Tag summary

Content type

Image

Digest

Size

24.9 MB

Last updated

over 7 years ago

docker pull dgkanatsios/simplenodejsudp