Leveraging microservice end-to-end transparency in development
Laitinen, Aatu (2022)
Kandidaatintyö
Laitinen, Aatu
2022
School of Engineering Science, Tietotekniikka
Kaikki oikeudet pidätetään.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2022052438589
https://urn.fi/URN:NBN:fi-fe2022052438589
Tiivistelmä
Microservice architecture has emerged as a widely adopted way of breaking software into independent components that are more agile to develop and manage. However, as the microservice systems grow larger they are faced with increasing complexity and difficulty to govern. This has created the need for monitoring microservices to form better transparency of the system and how its components work together.
In this work we researched scientific literature to find out how microservice developers can utilize the different aspects of microservice monitoring to improve their development process. We research what aspects of monitoring can bring the most value to the development and furthermore to the customers of the services. The findings from the literature review are summarized to a survey. The survey is conducted on a small group of developers working in various development teams of a Finnish software development company. To create a comprehensive understanding on how the monitoring aids microservice development in practice, the results are collated and analyzed.
The results indicate that microservice monitoring has various uses for improving microservice development. Both the literature review and the survey state that collecting metrics, logs and traces through monitoring and combining them increases the speed and quality at which the microservices can be continuously integrated and deployed. Because the survey was conducted with only 15 developers who all are part of the same company, it affects the validity of the research results and thus they should be taken as directional. Mikropalveluarkkitehtuuri on viime vuosina noussut yleisesti käytetyksi tavaksi pilkkoa ohjelmistoja pienempiin itsenäisiin osiin, jotka ovat ketterämpiä kehittää ja käsitellä. Näiden mikropalveluohjelmistojen kasvaessa suuremmiksi, myös niiden monimutkaisuus kasvaa ja ohjelmistokokonaisuudesta tulee vaikeampi hallita. Tämä on luonut tarpeen monitoroida mikropalveluiden toimintaa, jotta voidaan paremmin hahmottaa ja hallita ohjelmistokokonaisuutta ja sitä miten eri osat toimivat yhteen.
Tässä työssä käydään läpi tieteellistä kirjallisuutta mikropalveluiden monitoroinnista ja selvitetään kuinka kehittäjät voivat hyödyntää mikropalveluiden monitorointia palveluiden kehityksessä. Työssä tarkastellaan sitä, mitkä monitoroinnin osa-alueet edistävät parhaiten kehitystä ja tätä kautta tuovat eniten arvoa palveluiden asiakkaille. Kirjallisuuskatsauksen tulokset tiivistetään kyselyksi. Tämä kysely jaetaan pienelle ryhmälle kehittäjiä, jotka kaikki toimivat suomalaisen ohjelmistoyrityksen eri kehityssoluissa. Kirjallisuuskatsauksen ja kyselyn tuloksia käydään läpi, jotta saadaan luotua kattava käsitys siitä, miten mikropalveluiden monitorointia voidaan käytännössä hyödyntää palveluiden kehityksessä.
Tulosten perusteella mikropalveluiden monitorointi edistää palveluiden kehitystä usealla eri tavalla. Kirjallisuuskatsaus ja kysely molemmat toteavat, että metriikoiden, sekä seuranta- ja lokitietojen kerääminen ja yhdistäminen edistää palveluiden jatkuvan integroinnin ja julkaisemisen nopeutta ja laatua. Koska kysely toteutettiin vain 15 kehittäjän kanssa, jotka kaikki toimivat samassa yrityksessä, tuloksia voidaan pitää vain suuntaa antavina.
In this work we researched scientific literature to find out how microservice developers can utilize the different aspects of microservice monitoring to improve their development process. We research what aspects of monitoring can bring the most value to the development and furthermore to the customers of the services. The findings from the literature review are summarized to a survey. The survey is conducted on a small group of developers working in various development teams of a Finnish software development company. To create a comprehensive understanding on how the monitoring aids microservice development in practice, the results are collated and analyzed.
The results indicate that microservice monitoring has various uses for improving microservice development. Both the literature review and the survey state that collecting metrics, logs and traces through monitoring and combining them increases the speed and quality at which the microservices can be continuously integrated and deployed. Because the survey was conducted with only 15 developers who all are part of the same company, it affects the validity of the research results and thus they should be taken as directional.
Tässä työssä käydään läpi tieteellistä kirjallisuutta mikropalveluiden monitoroinnista ja selvitetään kuinka kehittäjät voivat hyödyntää mikropalveluiden monitorointia palveluiden kehityksessä. Työssä tarkastellaan sitä, mitkä monitoroinnin osa-alueet edistävät parhaiten kehitystä ja tätä kautta tuovat eniten arvoa palveluiden asiakkaille. Kirjallisuuskatsauksen tulokset tiivistetään kyselyksi. Tämä kysely jaetaan pienelle ryhmälle kehittäjiä, jotka kaikki toimivat suomalaisen ohjelmistoyrityksen eri kehityssoluissa. Kirjallisuuskatsauksen ja kyselyn tuloksia käydään läpi, jotta saadaan luotua kattava käsitys siitä, miten mikropalveluiden monitorointia voidaan käytännössä hyödyntää palveluiden kehityksessä.
Tulosten perusteella mikropalveluiden monitorointi edistää palveluiden kehitystä usealla eri tavalla. Kirjallisuuskatsaus ja kysely molemmat toteavat, että metriikoiden, sekä seuranta- ja lokitietojen kerääminen ja yhdistäminen edistää palveluiden jatkuvan integroinnin ja julkaisemisen nopeutta ja laatua. Koska kysely toteutettiin vain 15 kehittäjän kanssa, jotka kaikki toimivat samassa yrityksessä, tuloksia voidaan pitää vain suuntaa antavina.