Feedback

Faculté des Sciences appliquées
Faculté des Sciences appliquées
MASTER THESIS
VIEW 139 | DOWNLOAD 8

Transforming the monolithic architecture of a consumer application into a cloud and microservices-oriented architecture

Download
Paquay, Joachim ULiège
Promotor(s) : Leduc, Guy ULiège ; Rigaux, Sébastien
Date of defense : 24-Jun-2021/25-Jun-2021 • Permalink : http://hdl.handle.net/2268.2/11456
Details
Title : Transforming the monolithic architecture of a consumer application into a cloud and microservices-oriented architecture
Translated title : [fr] Transformation de l'architecture monolithique d'une application grand public en une architecture orientée cloud et microservices
Author : Paquay, Joachim ULiège
Date of defense  : 24-Jun-2021/25-Jun-2021
Advisor(s) : Leduc, Guy ULiège
Rigaux, Sébastien 
Committee's member(s) : Mathy, Laurent ULiège
Donnet, Benoît ULiège
Language : English
Number of pages : 86
Discipline(s) : Engineering, computing & technology > Computer science
Institution(s) : Université de Liège, Liège, Belgique
Degree: Master : ingénieur civil en informatique, à finalité spécialisée en "computer systems security"
Faculty: Master thesis of the Faculté des Sciences appliquées

Abstract

[en] This project consists in transforming the backend of an existing monolithic architecture of a postcard sending application into a cloud and microservices-oriented architecture.
The point of this transformation is to be able to solve the problems of the monolithic architecture when there is a lot of customers using the application.
Indeed, we want the application to be more scalable. This scalability is achieved thanks to the properties of the microservices architecturea and thanks to the cloud-oriented architecture.

The first step of this work was to analyse the existing monolithic architecture in order to determine what are the parts that needed to be scaled in priority.
After analyse, only three features were targeted because the project is too big to be totally finished within the given time. These targeted features are the feature that deals with the postcard generation (i.e. the postcard really printed and sent via the postal system), the feature that deals with the storage of the assets (i.e. the postcard generated, the images used on the postcard, etc.) and the feature that deals with the card printing (i.e. sending the generated card to the printer's server).
Even though this project consists in a transformation, the assets' storage part didn't exist at all in the initial architecture and the postcard generation part had to be rebuilt from scratch.

The second step was to understand the different needs of these features and how they should be implemented and interconnected with each other since they are now isolated in their own microservice. Since the project is too big, there is still one big block containing all the remaining features which corresponds to the monolithic block minus the features corresponding to the microservices. So the monolithic block remains as is for a big part of the application.
During the development of these features, the monolithic architecture has evolved step by step to become a microservices and cloud-oriented architecture as more and more features were isolated in their own microservice.
As the features were isolated inside their own microservices, one sub-step was to deal with the communications between the microservices. These microservices will communicate with each other in order to either send some messages or to get some information. This communication is done in a cloud-friendly way thanks to some synchronous and asynchronous protocols. They need to communicate with defined protocols since they can be deployed on different machines or in the cloud.
They will also use some cloud-oriented storage in order to deal with the assets. This cloud-oriented storage is used so that the company doesn't have to manage a storage (for instance a/some disk/s) containing the assets as it can be big and, also, to decouple the data from the services since for now these assets are stored inside a database. Furthermore, the company doesn't have to deal at all with the infrastructure regarding the assets storage.

Finally, there is a microservices and cloud-oriented architecture that contains the three microservices and the original block. These three microservices are using the cloud and are cloud-ready. Furthermore, they can communicate with each other (and with the block) in order to achieve their goal.
Even though this can be considered as a microservices architecture, the project is not finished yet since more features can be isolated in their own microservice.


File(s)

Document(s)

File
Access Master_Thesis_Report_Paquay_Joachim.pdf
Description: Report
Size: 2.85 MB
Format: Adobe PDF
File
Access Summary_Master_Thesis_Paquay_Joachim.pdf
Description: Summary
Size: 53.43 kB
Format: Adobe PDF

Annexe(s)

File
Access code_master_thesis_Paquay_Joachim.zip
Description: Ce .zip contient une très grand partie du code écrit durant ce travail. Cependant, certain fichiers de configurations ont été retirés vi à vis de la confidentialité de l'entreprise. De plus, il manque tout la partie liée au block monolithique étant donné qu'elle contenait du code de l'entreprise, elle ne voulait pas le partager.
Size: 30.53 MB
Format: Unknown

Author

  • Paquay, Joachim ULiège Université de Liège > Master ingé. civ. info., à fin.

Promotor(s)

Committee's member(s)

  • Mathy, Laurent ULiège Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Systèmes informatiques répartis et sécurité
    ORBi View his publications on ORBi
  • Donnet, Benoît ULiège Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Algorithmique des grands systèmes
    ORBi View his publications on ORBi
  • Total number of views 139
  • Total number of downloads 8










All documents available on MatheO are protected by copyright and subject to the usual rules for fair use.
The University of Liège does not guarantee the scientific quality of these students' works or the accuracy of all the information they contain.