Scaling the Simulation Core of Modifiable Virtual Environments with Serverless Computing

Detta är en Master-uppsats från KTH/Skolan för elektroteknik och datavetenskap (EECS)

Författare: Javier Ron Arteaga; [2021]

Nyckelord: ;

Sammanfattning: Modifiable Virtual Environments (MVEs) are widely popular, especially in the video game industry. An example application of MVEs is the game Minecraft, which has a player count reaching into the hundreds of millions. But despite the huge number of users, MVE applications have significant limitations regarding scalability. MVEs are generally deployed in client-server architectures, where servers can support, at a maximum, a few hundreds of clients simultaneously. This scalability issue severely hinders interaction between users and communities. Previous work in MVE scalability has been focused on scaling out servers using approaches that focus on user actions, or moving away from client-server architectures, specifically in the form of peer-to-peer or hybrid architectures. Yet, distribution through serverless computing has only recently been proposed, and no attempt at designing or gathering experimental data has been presented. Therefore, this thesis proposes a model for distributing the simulation process of MVEs and a prototype implementing said model over a serverless computing platform, with the main objective of increasing their scalability. The distribution model is specific to MVEs and exploits its design properties. We also present a system design to take advantage of said model, which consists of two additions to a traditional MVC client-server architecture: a client-side module, and a cloud module. Experimental results show that the proposed distribution model, applied in a serverless computing setting, is a viable approach for scaling MVE simulations. Furthermore, regarding performance and scalability, results show a meaningful increase in the volume of users and simulated constructs that the system can correctly handle. 

  HÄR KAN DU HÄMTA UPPSATSEN I FULLTEXT. (följ länken till nästa sida)