Simulating dedicated game servers using NodeJS worker threads

By Srushtika Neelakantam

Elevator Pitch

NodeJS worker threads have opened doors to exciting implementations on the server-side. Multiplayer networked games, among others, make a really good candidate for CPU intensive applications.

In this talk, we’ll understand everything about NodeJS worker threads and see a real implementation.

Description

NodeJS worker threads have opened doors to many exciting implementations and functionalities on the server-side. Multiplayer networked games, among others, make a really good candidate for CPU intensive applications which would greatly benefit from this multi-threaded-ness of NodeJS.

In this talk, we’ll understand everything about NodeJS worker threads and see a real implementation of this concept to simulate dedicated game servers to enable various groups of players to play private instances of a live game simultaneously.

Notes

I discovered worker threads in NodeJS while they were still a beta feature. I realised the great benefits they bring to the table especially for multiplayer games. I managed to utilise this concept in quite a few interactive demos and multiplayer games I built over the past year https://github.com/ably-labs/multiplayer-games-scalable-networking-framework#creating-node-js-worker-threads. As they are a new thing, there aren’t many places you get to learn about the real-world use-cases. So hopefully, this talk will introduce this concept along with some usage examples from which developers can draw parallels with their own implementations.