This presentation will explain how Spil Games has grown in a short time from an internet startup to a global online gaming company and how we currently are building a global cross datacenter storage solution with MySQL as its backend.
The first part will contain a short summary of where we started with our database engineering department (look ahead at most one week in time), to a more professionalized department (look ahead and plan three to four months in time) to currently growing out of the startup phase (look ahead and plan more than one year in time). This will be illustrated with some examples of the growing pains we encountered with scaling, replication and high availability and leading up to the conclusion that we need to acknowledge our problems and shortcomings to actually be able to overcome them.
The second part of the presentation will contain a comparison of our old architecture against the new architecture. In this new architecture we take into account that failure of a complete datacenter is certain to occur sometime and strive to give our users the best possible experience, even in worst case when data is inaccessible. We also introduce asynchronous calls which enable us to fire and forget most of our writes. The architecture is being built with MySQL, handler sockets, Erlang and Memcache as its building blocks.