An Introduction to IaaS vs. PaaS vs. SaaS for Mobile Game Servers
Tuomo Jorri •
Dive into the world of server and infrastructure choices for mobile game development with our introduction to Infrastructure-as-a-Service, Platform-as-a-Service, and Software-as-a-Service.
To understand the server and infrastructure costs for mobile games today and the decisions facing developers as they set up their infrastructure stack, it’s useful to take a look at the various types of services supporting these requirements: Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS).
By the end of this article, you’ll know how these three categories of services available for mobile game servers differ - the starting point for any decision involving your game’s tech stack.
What is Infrastructure-as-a-Service (IaaS)?
Infrastructure-as-a-Service (or IaaS) came first, which was essentially the virtualized, programmatic, just-in-time and on-demand access to the basic resources around servers, storage, and network. Placing your infrastructure on an IaaS solution helps you avoid the cost of buying and maintaining physical servers and on-site data centers.
What is Platform-as-a-Service (PaaS)?
Platform-as-a-Service (or PaaS) is the evolution of IaaS. PaaS essentially hides those individual infrastructure components behind more abstracted interfaces. It allows the consumers of PaaS services to focus more on application-level issues, and not get too concerned about the intricacies of what goes on inside those platforms.
To concretize this a bit more, with IaaS you often get blank canvases in the form of virtual machines with an operating system. This allows you to manage them in pretty much any way you want, and gives you the maximum amount of flexibility, but the tradeoff is the complexity in setting them up and ensuring that they work and scale as they should.
PaaS, on the other hand, often takes applications or services that you could set up and manage yourself on top of IaaS and instead does that all for you, taking away the operational overhead and complexity of IaaS. Although you don't need to care that much about servers, you still have to consider things such as execution environments and versions, and manage the applications that consume the PaaS.
However, PaaS introduces the tradeoff of typically costing more per unit of usage than if you built everything yourself. PaaS solutions also often impose certain limitations required for the vendor to be able to provide you with a more simple and scalable platform.
In short, PaaS gives you less control than IaaS, but is easier to manoeuvre. However, that often comes at a cost of being more expensive than IaaS.
What Is Software-as-a-Service (SaaS)?
The third big *aaS is Software-as-a-Service (SaaS). SaaS is the most mass-market version, and kicks the abstraction layer up a notch again. Comparing SaaS solutions to PaaS, SaaS moves the boundary more towards offering only interfaces or APIs to a software service, which is fully run and managed by the SaaS vendor.
All that said, the boundaries between these categories are fairly vague, and sometimes it comes down to just a matter of perspective of how to classify different services.
And when setting out to build your game, the boundaries are so blurred that it often makes sense to mix and match (i.e. you don't need to exclusively choose IaaS solutions - it's more than fine to mix IaaS components with PaaS, and in many cases in fact makes a lot of sense).
Mobile Game Servers: A Key Piece of the Puzzle
And that’s it for this introduction to the different types of services available for your mobile game tech stack. Use this as a starting point for greater research, remembering that the infrastructure you build your game’s backend on is critical to your long-term success.
The major distinction between each of these types of solutions is pricing. Choosing between IaaS, PaaS and SaaS has huge implications when it comes to how much it costs to run a mobile game. We dive into concrete examples of pricing differences and various tools you can use for your mobile game server here.