Levelling Up: Integrating Back-end Technologies for Game Development Success

By Terry Storrar, Managing Director, Leaseweb UK.

  • 1 year ago Posted in

In the highly competitive and technically demanding gaming industry, it’s not uncommon for developers to put their infrastructure strategy and partners in place before building the accompanying tech stack. The problem with this approach is that the close relationship between infrastructure and back-end technologies means the process should operate the other way around. The main reason for this is that certain infrastructures don’t support certain technologies, and not making future-proofed decisions can create problems down the line.

In this context, there are three main options for gaming companies looking to build an effective back-end strategy: a managed public cloud, a backend as a service (or BaaS), or an on-premise/hosting provider. Moreover, the choice of infrastructure provider should be influenced by a number of factors in addition to the type of game being developed. Decisions should also consider any commercial limitations and the availability of relevant in-house talent.

For example, unmanaged hosting offers a barrier-free route to most technologies, the option to set up a hybrid-cloud link towards other providers, no vendor lock-in and considerable cost savings, among many other advantages. What also must be in place, however, is a capable and experienced team to manage and build orchestration and scaling throughout the lifecycle of the solution.

For those considering a managed cloud solution, this is a tried and tested approach used by organisations everywhere, not least because it offers autoscaling and low maintenance. For game developers, the downsides are that there is typically no optimised hardware included, it creates vendor lock-in, can lack flexibility and is often the most expensive option.

In the case of Backend-as-a-Service (BaaS), this option can deliver a quick, easy and out-of-the-box solution. The problem here can be users end up being at the whim of their tech stack and can be forced to adopt whatever changes the service provider makes – there have even been cases of providers shutting down and the backend disappearing completely. There can also be a lack of transparency on how pricing is structured.

Data Management: Embracing Containers

Another issue that should be top of mind is a long-term plan for how data will be gathered, stored and interacted with. Gaming organisations should be thinking about whether they will use a multi-provider infrastructure or will integrate with services such as Kubernetes. They should also consider how to backup player data and disaster recovery strategies alongside fail-safe offline modes in the event of a network failure, and especially the best database for their needs.

For example, Certain Affinity, a renowned name in the gaming industry, employs an impressive methodology to streamline its infrastructure. They utilise containers to segregate their systems based on varying criteria such as memory, storage, and capacity. Notable technologies that facilitate this process are Kubernetes, Golang and Docker – tools which can simplify the distribution of backend services across different Virtual Machines (VMs). As a result, they are becoming extremely popular

thanks to their ability to make life easier for developers by enabling them to manage their infrastructure much easier – taking a lot of the management load off their hands and improving agility.

For newcomers who might not be versed in these technologies, there are managed container services available, a prime example being Kubernetes, which is offered as a managed service by Google Cloud.

Unlocking Microservices

For many developers, microservices also play an integral role in managing various services within a game. As those familiar with microservices can attest, managing them can be a complex process due to the numerous moving components, meaning it is advisable to initiate this process with a more simple and manageable approach and gradually build upon it. Certain Affinity, for instance, adopts a practice where they begin with a monolithic architecture, deploying various API services within a single executable. When a service proves its value, it is then extracted and made into a standalone service. This evolutionary approach mitigates the risks associated with deploying numerous new elements, which may be riddled with bugs or prove to be redundant.

Microservices offer a plethora of benefits, with multi-dimensional scaling being among the most important. This refers to both performance scaling, which allows parts of the system to be isolated and scaled based on resource consumption, and team scalability, which facilitates the division of labour among teams working on different microservices.

Ultimately, given that no two games are alike, how these models are then applied changes from game to game. Experience often allows developers to unearth new best practices, and it’s great to see the gaming community is keen to share these ideas and help other studios overcome their challenges. What most people agree on, however, is that game developers should aim to be able to build their own backend within a five-year timeframe, the objective being to have complete control and ownership of their whole architecture.

By Kashif Nazir, Technical Manager at Cloudhouse.
By Richard Eglon, CMO, Nebula Global Services.
By Graham Jarvis, Freelance Business and Technology Journalist, Lead Journalist – Business and...
By Krishna Sai, Senior VP of Technology and Engineering.
By Thomas Kiessling, CTO Siemens Smart Infrastructure & Gerhard Kress, SVP Xcelerator Portfolio...
By Aleksi Helakari, Head of Technical Office, EMEA, Spirent and Patrick Johnson, CMO, APNT - a...
By Dave Longman, Head of Delivery, Headforwards.
It’s getting to the time of year when priorities suddenly come into sharp focus. Just a few...