Integrating a Monolithic Web Service Into a Microservice-Based Cloud Platform
Viikari, Valtteri (2022)
Viikari, Valtteri
2022
Tietotekniikan DI-ohjelma - Master's Programme in Information Technology
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2022-05-19
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202204273861
https://urn.fi/URN:NBN:fi:tuni-202204273861
Tiivistelmä
Integrating an uneditable monolithic web service into a microservice-based cloud platform is not a trivial task. Even if only a few features of the monolith are desired in the microservice platform, the monolith has to be integrated as a whole. The monolith may have undesirable features, such as user authentication, that the usage of the monolith requires. When integrating such a monolithic web service workarounds have to be developed to avoid the problematic features of the monolith.
The primary research goal of this thesis was to find out how monolithic web services can be integrated into microservice-based cloud platforms without modifying the monolith. The research question was explored by first developing and then evaluating a prototype implementation of integrating Open Cloud (an uneditable monolithic web service) into Vertex Sync (an existing microservice-based cloud platform). The case also gave rise to two more research questions: Is Open Cloud suitable for existing microservice-based cloud platforms and whether Open Cloud is suitable for Vertex Sync.
Open Cloud was deemed suitable for existing microservice-based cloud platforms as the implementation fit the nature of microservices well and the unsolvable issues found during development did not cause enough issues to make Open Cloud unsuitable. Only two issues were found that had a moderate impact on the suitability of Open Cloud by increasing the resource consumption and therefore the expenses of running the system.
Open Cloud was also deemed preliminarily suitable for Vertex Sync as the implementation was judged to be suitable for microservice-based cloud platforms and Open Cloud's performance was judged to be adequate enough. The expenses of running the system require further analysis before Open Cloud can be judged to be suitable for Vertex Sync for sure.
The implemented method of having an intermediary microservice responsible for all communication between Open Cloud (the monolith) and the other microservices was deemed a simple and effective solution to the question of how monolithic web services can be integrated into microservice-based cloud platforms. The method was evaluated to be applicable to most monolithic web services and microservice-based cloud platforms and it can be used to solve most issues related to the integration. However, additional microservices should be considered depending on the implementation environment.
The primary research goal of this thesis was to find out how monolithic web services can be integrated into microservice-based cloud platforms without modifying the monolith. The research question was explored by first developing and then evaluating a prototype implementation of integrating Open Cloud (an uneditable monolithic web service) into Vertex Sync (an existing microservice-based cloud platform). The case also gave rise to two more research questions: Is Open Cloud suitable for existing microservice-based cloud platforms and whether Open Cloud is suitable for Vertex Sync.
Open Cloud was deemed suitable for existing microservice-based cloud platforms as the implementation fit the nature of microservices well and the unsolvable issues found during development did not cause enough issues to make Open Cloud unsuitable. Only two issues were found that had a moderate impact on the suitability of Open Cloud by increasing the resource consumption and therefore the expenses of running the system.
Open Cloud was also deemed preliminarily suitable for Vertex Sync as the implementation was judged to be suitable for microservice-based cloud platforms and Open Cloud's performance was judged to be adequate enough. The expenses of running the system require further analysis before Open Cloud can be judged to be suitable for Vertex Sync for sure.
The implemented method of having an intermediary microservice responsible for all communication between Open Cloud (the monolith) and the other microservices was deemed a simple and effective solution to the question of how monolithic web services can be integrated into microservice-based cloud platforms. The method was evaluated to be applicable to most monolithic web services and microservice-based cloud platforms and it can be used to solve most issues related to the integration. However, additional microservices should be considered depending on the implementation environment.