Tietojen johdonmukaisuus hajautetuissa tapahtumissa mikropalveluarkkitehtuurissa
Lindqvist, Ritva (2024)
Lindqvist, Ritva
2024
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202404268059
https://urn.fi/URN:NBN:fi:amk-202404268059
Tiivistelmä
Tämän opinnäytetyön tavoite oli selvittää, mitkä ovat yleisesti käytetyt menetelmät tietojen johdonmukaisuuden hallintaan hajautetuissa tapahtumissa mikropalveluarkkitehtuurilla toteutetussa sovelluksessa, sekä tutkia, mitä niiden käytössä tulee huomioida, jotta tiedot pysyvät johdonmukaisina.
Yleisesti käytetyt menetelmät ovat kaksivaiheinen sitoumus ja saaga. Kaksivaiheinen sitoumus takaa tietojen johdonmukaisuuden kaikissa tilanteissa. Sen käyttö kuitenkin rajoittaa, mitä teknologioita mikropalvelut voivat käyttää. Saaga tarjoaa lopullisen johdonmukaisuuden ja mahdollistaa erilaisten teknologioiden käytön, mutta siitä puuttuu tietojen eristyneisyys. Tietojen eristyneisyyden puutteen hallintaan saagassa voidaan käyttää erilaisia vastatoimia. Virhetilanteessa saagalla toteutettu tapahtuma vaatii kompensoivat tapahtumat toisin kuin kaksivaiheinen sitoumus.
Tutkimusmenetelmä oli kvalitatiivinen, soveltava tutkimus, jossa testattiin kaksivaiheista sitoumusta ja saaga-mallia mikropalveluarkkitehtuurilla toteutetussa testiympäristössä. Tutkimustuloksista käy ilmi, että sopiva menetelmä riippuu sovelluksen vaatimista ominaisuuksista ja käytettävissä olevasta teknologiasta. Tietojen johdonmukaisuuden ylläpitäminen vaatii kuitenkin aina hyvää suunnittelua ja toteutusta.
Yleisesti käytetyt menetelmät ovat kaksivaiheinen sitoumus ja saaga. Kaksivaiheinen sitoumus takaa tietojen johdonmukaisuuden kaikissa tilanteissa. Sen käyttö kuitenkin rajoittaa, mitä teknologioita mikropalvelut voivat käyttää. Saaga tarjoaa lopullisen johdonmukaisuuden ja mahdollistaa erilaisten teknologioiden käytön, mutta siitä puuttuu tietojen eristyneisyys. Tietojen eristyneisyyden puutteen hallintaan saagassa voidaan käyttää erilaisia vastatoimia. Virhetilanteessa saagalla toteutettu tapahtuma vaatii kompensoivat tapahtumat toisin kuin kaksivaiheinen sitoumus.
Tutkimusmenetelmä oli kvalitatiivinen, soveltava tutkimus, jossa testattiin kaksivaiheista sitoumusta ja saaga-mallia mikropalveluarkkitehtuurilla toteutetussa testiympäristössä. Tutkimustuloksista käy ilmi, että sopiva menetelmä riippuu sovelluksen vaatimista ominaisuuksista ja käytettävissä olevasta teknologiasta. Tietojen johdonmukaisuuden ylläpitäminen vaatii kuitenkin aina hyvää suunnittelua ja toteutusta.