Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
36 views20 pages

Thesis

This document provides context for research on designing and implementing a massively multiplayer online role-playing game (MMORPG) service deployed on a cloud platform using microservices architecture. It discusses existing research on cloud gaming, MMORPG architectures and challenges, developing online games on cloud platforms, microservices architecture, and analyzing data traffic in MMORPGs. The goal of the proposed research is to demonstrate the advantages of using cloud computing for hosting MMORPG gaming servers, such as reduced costs, scalability, automation and ease of updates.

Uploaded by

Luigi Vanacore
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views20 pages

Thesis

This document provides context for research on designing and implementing a massively multiplayer online role-playing game (MMORPG) service deployed on a cloud platform using microservices architecture. It discusses existing research on cloud gaming, MMORPG architectures and challenges, developing online games on cloud platforms, microservices architecture, and analyzing data traffic in MMORPGs. The goal of the proposed research is to demonstrate the advantages of using cloud computing for hosting MMORPG gaming servers, such as reduced costs, scalability, automation and ease of updates.

Uploaded by

Luigi Vanacore
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

Design and Implementation of a

MMORPG gaming service deployed on


a Cloud Platform and using the
microservices architectural pattern
by
Luigi Vanacore
This proposal has been submitted in partial fulfillment for the
module Computing Research and Practice.

in the
Faculty of Engineering and Science
Department of Computer Science

August 2019
Declaration of Authorship
I, Luigi Vanacore , declare that this proposal titled, ‘Design and Implementation of a
MMORPG gaming service deployed on a Cloud Platform and using the microservices
architectural pattern’ and the work presented in it are my own. I confirm that:

 This work was done wholly or mainly while in candidature for an masters degree
at Cork Institute of Technology.

 Where I have consulted the published work of others, this is always clearly at-
tributed.

 Where I have quoted from the work of others, the source is always given. With
the exception of such quotations, this project report is entirely my own work.

 I have acknowledged all main sources of help.

 I understand that my project documentation may be stored in the library at CIT,


and may be referenced by others in the future.

Signed: Luigi Vanacore

10/08/19
Date:

i
CORK INSTITUTE OF TECHNOLOGY

Abstract
Faculty of Engineering and Science
Department of Computer Science

Master of Science

by Luigi Vanacore

Word Count: 297

Cloud computing technology is increasing its presence in our lives more and more in
unexpected ways. An example of this is the use of Cloud Computing in the gaming world.
The video game industry is now never an established and pervasive reality worldwide.
With billions of profits and an audience of millions of gamers, this industry that makes
technological progress the center of its evolution, could only benefit from revolutionary
technology like Cloud Computing. The same cloud providers like Amazon and Google,
are now starting to offer ad hoc cloud services for the video game industry.

These offers can be divided into two types:

• Cloud Gaming Streaming Service

• Cloud Multiplayer Gaming Service

This thesis will be based on the second type, on the design and implementation of a mass
online multiplayer roleplay game service on the cloud platform. To take full advantage
of the cloud platform’s capabilities, the software architecture of this cloud service will
be based on microservices.

The purpose of this thesis is to demonstrate how the use of the Cloud platform can be
a definite advantage in the world of gaming multiplayer. In fact, by using the cloud
platform for hosting the gaming servers you can get:

• reduction of operating costs


iii

• possibility to scale servers vertically and horizontally depending on the load of


players

• possibility to automate and optimize management and maintenance, thus reducing


the workforce

• greater speed and ease in releasing new versions with the possibility of using devops
methods for the cloud platform.

The research will be conducted by designing and implementing a mmorpg backend ser-
vice deployed on a cloud platform and using the microservices architectural pattern.
The design science research methodology will then be followed.

The resulting artifact will demonstrate the set goals, showing the many advantages that
cloud computing offers.
Contents

Declaration of Authorship i

Abstract ii

List of Figures v

1 Research Context 1

2 Research Aim 4

3 Research Objectives 5

4 Research Methodology 6

5 Work Plan 8

6 Ethical Issues 12

Bibliography 13

iv
List of Figures

5.1 General view of the Gantt Chart . . . . . . . . . . . . . . . . . . . . . . . 9

5.2 Gantt chart of the Requirement specification phase . . . . . . . . . . . . . 10

5.3 Gantt chart of the Design phase . . . . . . . . . . . . . . . . . . . . . . . 10

5.4 Gantt chart of the Development phase . . . . . . . . . . . . . . . . . . . . 10

5.5 Gantt chart of the Testing phase . . . . . . . . . . . . . . . . . . . . . . . 10

5.6 Gantt chart of the Deployment phase . . . . . . . . . . . . . . . . . . . . . 11

v
Chapter 1

Research Context

Word Count: 947

As a research topic , the theme of cloud gaming has been addressed for the challenges
it implies in managing computational resources and networking for serving a real time
service with the highest quality of service. A general overview on the subject gives it the
article [1]. Cloud gaming can be divided into two types of services: cloud gaming hosting
and cloud gaming streaming. In the first, the gaming services that client games access to
be able to support online multiplayer functionality are distributed on cloud platforms In
the second, the cloud gaming streaming is the service offered by the cloud providers to
manage the entire computational and resource load of the gaming service. The client has
the only load to manage user input and to send data received from the cloud to the screen.
Both types of gaming services are researched topics, especially the aspects they have in
common. In the [1] article, there is an interesting analysis of cloud gaming literature,
in which the research papers are classified into different categories, showing how the
topic is widely debated. The theme of this research proposal is to design and develop an
MMORPG game service on a cloud platform. MMORPG ( Massive Multiplayer Online
Role-Playing Game) is a game genre which allows thousands of people to connect and
role-play in a same or separate instances of a virtual world. Typically, these games are
experienced by controlling an in-game character which properties, such as name, race
and skills can be customized. An article that describes the general architecture of a
typical MMORPG and how it is addressed as a research topic is [2]. In [2] is stated that
Current research in the area of MMORPGs fits mainly into one of four categories:

• The social interactions between players in MMORPGs.

• The different architectures to build MMORPGs.

• The effects of latency on MMORPGs.


1
Research Context 2

• Problems that plague MMORPGs.

Another interesting article is [3], where the different aspects and challenges of massive
online game development on cloud platforms is illustrated. A more specific analysis on a
commercial MMORPG it is given by the article [4], in which the case study of one of the
most successful MMORPGs on the market ”World of Warcraft” is addressed, stating
that adopting zone-based server consolidation strategy can drastically reduce costs and
operating costs and improve service quality. A zone-based server consolidation strat-
egy can be easily adopted using a cloud infrastructure. It can be understood therefore
that this article gives a point in favor of the idea of using a cloud infrastructure to
support a game service MMORPG. The problems of resource management in the case
of cloud gaming are further addressed in the articles [5] and [6]. In these articles, the
problems of resource management in cloud gaming are presented and it is stated how
much of the innovation needed to take cloud gaming to the next level may reside in
adopting new programming paradigms to support the unique needs of these complex
systems. The microservices software architecture can be considered a new programming
paradigms perfectly adaptable to this topic, as the microservices architecture is a new
type of software architecture that is born thanks to the environment and cloud and is
able to reduce the complexity of complex software systems. An effective analysis of the
microservices architecture can be found in the articles [7] and [8]. In these articles the
software architectural model of microservices is presented. Model born precisely with
the spread of cloud services, given that it is in the highly distributed and scalable cloud
environment that this model shows its greatest advantages. Currently this architectural
pattern is having a growing interest from companies. Legacy monolithic applications
have been converted into microservice applications, as new start-ups have created their
new applications directly following this model. Therefore, using this architectural model
means ensuring a great rate of innovation for the application, with the pros and cons
this entails. The gaming applications are real-time services, which in the case of online
games need to work in order to function between two or more end-points as much as
stable and with as little lag as possible. This has led to great attention to the search for
data traffic between client and server and its quality of service. A research article deal-
ing with this topic is [9], in which the data traffic of an MMORPG is analyzed, noting
that a MMORPG is characterized by a large number of concurrent participants and its
upstream-downstream traffic is asymmetry. The analysis was performed on two bases:
aggregate traffic and per session traffic. The aggregate traffic characteristics showed
that there was a significant asymmetry between upstream and downstream traffic. This
asymmetry should be taken into account in two aspects. Game developers should de-
sign a game server considering this asymmetry; for example, mitigating traffic burden
by optimizing downstream data packet size. On the other hand, ISPs can efficiently
Research Context 3

provision network resources to game servers; for example, allocating more bandwidth
to downstream traffic. One of the biggest problems for online games is the network la-
tency. In the article [10] states that latency determines not only how players experience
online gameplay but also how to design the games to mitigate its effects and meet player
expectations. In a logic in which the MMORPG is deployed on a cloud platform, the
cloud provider can better manage data traffic, even distributing the services in various
geographical areas, mitigating the effects of network latency by bringing endpoints closer
together, and offering bandwidth in downstream adaptable to various requests.
Chapter 2

Research Aim

The aim of this research is to design, using the best and most recent software engineering
methods and techniques, and implementing, using the best technologies and frameworks
available to the state of art, a mmo gaming service deployed on a cloud platform and
following the microservices software architectural pattern.

4
Chapter 3

Research Objectives

The thesis aims at multiple objectives, which will now be examined:

• to demonstrate the advantages in deploying the mmorpg gaming service on the


cloud platform

• to demonstrate how the cloud platform can be used to host services that require
high traffic without losing efficiency and quality of service

• to demonstrate that the new architectural pattern of microservices, which came


into vogue thanks to the spread of cloud computing, can be used for a complex
application with high requirements such as the mmorpg gaming service

5
Chapter 4

Research Methodology

The research method proposed for the thesis is a design science methodology. The
article [11] defines that the purpose of design science research is to address the research
problem by building and evaluating IT artifacts. These artifacts can be models, methods,
frameworks or instantiations. An artifact, however, is considered viable only when it is
developed to solve identified business needs in a new or more efficient manner. Hevner
et al. [12] proposed a guideline in Design Science Research in Information System, these
guidelines are as follows:

• Guideline 1: Design as an Artifact: Design-science research must produce a viable


artifact in the form of a construct, a representation, a technique, or an instantiation
of.

• Guideline 2: The Relevance of Problem: The basic objective of design-science re-


search is to develop technology-based solutions to important and relevant business
problems.

• Guideline 3: The Design Evaluation: The utility, the quality, and the efficacy
of the design artifact must be demonstrated rigorously through a well-executed
evaluation methods.

• Guideline 4: Research Contribution: Effective design-science research must offer a


clear and provable contributions in the areas which design artifact is apply, design
foundations, and/or design methodologies.

• Guideline 5: Research Rigor: The Design-science research depends upon rigorous


methods application in both evaluation and the construction of the design artifact.

6
Research Methodology 7

• Guideline 6: Design as a Search Process: The search for effective artifact depend
the utilization of the available ways to reach desired outputs while the laws in the
problem environment are still satisfied.

• Guideline 7: Communication of Research: Design-science research presentation


must be effective both the technology-oriented as well as management-oriented
consultation.

In the proposed thesis, the design science guidelines are adapted by building a proof of
concept implementation of an MMORPG service which is developed according to the
principles of a microservice architecture pattern and deployed on a cloud platform. The
requirements of the MMORPG service are derived from the existing literature reported
previously.
Chapter 5

Work Plan

The proposed research project promises to be undoubtedly complex, so a correct plan-


ning of the work-plan is a fundamental aspect for the success of the project.Therefore, a
Work Breakdown Structure (WBS) and a project schedule in the form of a Gantt chart
were therefore prepared.The start of the research work was set for January 2020 and
its end for May 2020.The research method used, design science research methodology,
requires that an artifact be implemented that can demonstrate the results required by
the research. Since the artifact that will be implemented is a software product, the
Work Breakdown Structure (WBS) will be structured to define the various software
development phases.

1. Research

1.1 Requirements specification


1.1.1 Initial requirements analysis
1.1.1.1 General requirements analysis
1.1.2 Detailed requirements analysis
1.1.2.1 Functional requirements analysis
1.1.2.2 System requirements analysis
1.1.2.3 Technical requirement analysis
1.1.3 Final reporting of the requirements
1.2 Design
1.2.1 High Level Design
1.2.1.1 Functional design
1.2.1.2 System design
1.2.2 Low Level Design
8
Work Plan 9

1.2.2.1 Module design


1.2.2.2 Interface design
1.2.2.3 Api design
1.2.2.4 Class design
1.3 Development
1.3.1 Module development
1.3.2 Interface development
1.3.3 API development
1.3.4 Program Coding
1.4 Testing
1.4.1 Internal test
1.4.1.1 Unit testing
1.4.2 Integration test
1.4.2.1 System testing
1.4.3 Final Report generation
1.5 Deployment
1.5.1 Preparation of the Cloud platform
1.5.1.1 Defining the cloud services that will be used
1.5.1.2 Configuration of the cloud services
1.5.2 Software installment
1.5.2.1 Creation of the container ecosystem
1.5.2.2 Orchestration of the container ecosystem
1.5.2.3 Moving the application into the target environment

The project gantt chart will now be presented. To improve readability, the chart has
been divided into figures for each main phases.

Figure 5.1: General view of the Gantt Chart


Work Plan 10

Figure 5.2: Gantt chart of the Requirement specification phase

Figure 5.3: Gantt chart of the Design phase

Figure 5.4: Gantt chart of the Development phase

Figure 5.5: Gantt chart of the Testing phase


Work Plan 11

Figure 5.6: Gantt chart of the Deployment phase


Chapter 6

Ethical Issues

There are no ethical issues to discuss regarding the following research proposal.

12
Bibliography

[1] W. Cai, R. Shea et al., “A survey on cloud gaming: Future of computer games,”
IEEE Access, Jan 2016. [Online]. Available: https://www.researchgate.net/
publication/306006176 A Survey on Cloud Gaming Future of Computer Games

[2] L. Achterbosch, R. Pierce, and G. Simmons, “Massively multiplayer online role-


playing games: The past, present, and future,” Computers in Entertainment, Oct
2007. [Online]. Available: https://www.researchgate.net/publication/220686344
Massively multiplayer online role-playing games The past present and future

[3] A. Iosup, S. Shen et al., “Massivizing online games using cloud com-
puting: a vision,” IEEE International Conference on Multimedia and Expo
Workshops (ICMEW), 2014. [Online]. Available: https://atlarge-research.com/
pdfs/2014-iosup-massivizing.pdf

[4] Y. T. Lee and K. T. Chen, “Is server consolidation beneficial to mmorpg? a case
study of world of warcraft,” IEEE 3rd International Conference on Cloud Comput-
ing, 2010.

[5] Y. Zhang, P. Qu et al., “A cloud gaming system based on


user-level virtualization and its resource scheduling,” IEEE Trans-
actions on Parallel and Distributed Systems, Jan 2015. [Online]. Avail-
able: https://www.researchgate.net/publication/276409950 A Cloud Gaming
System Based on User-Level Virtualization and Its Resource Scheduling

[6] Y. Li, Y. Deng et al., “Cost-efficient server provisioning for cloud gaming,” ACM
Transactions on Multimedia Computing Communications and Applications, Jun
2018. [Online]. Available: https://www.researchgate.net/publication/326052025
Cost-Efficient Server Provisioning for Cloud Gaming

[7] P. D. Francesco, I. Malavolta, and P. Lago, “Research on architecting microser-


vices: Trends, focus, and potential for industrial adoption,” IEEE International
Conference on Software Architecture (ICSA), Apr 2017.

13
Bibliography 14

[8] ——, “Migrating towards microservice architectures: an industrial survey,” IEEE


International Conference on Software Architecture (ICSA), Apr 2018.

[9] J. Kim, J. Choi et al., “Traffic characteristics of a massively multiplayer online


role playing game,” ACM SIGCOMM workshop on Network and system support
for games, Oct 2005. [Online]. Available: http://citeseerx.ist.psu.edu/viewdoc/
download?doi=10.1.1.93.7220&rep=rep1&type=pdf

[10] M. Claypool and K. Claypool, “Latency and player actions in online games,” Com-
munications of the ACM - Entertainment networking, Nov 2006.

[11] K. Peffers, T. Tuunanen et al., “A design science research methodology for infor-
mation systems research,” Journal of Management Information Systems, Oct 2007.

[12] Hevner, Salvator, and J. Park, “Design science in information science,” MIS
Quarterly, Mar 2004. [Online]. Available: https://wise.vub.ac.be/sites/default/
files/thesis info/design science.pdf

You might also like