mikroservicearkkitehtuuri
Mikroservicearkkitehtuuri on ohjelmistosuunnittelun arkkitehtuurityyli, jossa sovellus muodostuu pienistä, itsenäisesti hallittavista palveluista. Jokainen palvelu vastaa yhtä liiketoimintafunktiota ja voidaan ottaa tuotantoon sekä skaalata erikseen. Palvelut voivat omistaa omat tietovarastonsa tai skeemansa, ja niiden välinen viestint tapahtuu kevyin protokollin, kuten RESTin, gRPC:n tai viestijonojen kautta.
Keskeisiä piirteitä ovat bounded context -alueet, itsenäinen käyttöönotto, hajautettu tietojen hallinta sekä sekä synkroninen että asynkroninen
Hyödyt ovat parempi skaalautuvuus, vikaeristys ja nopeammat toimituskyvyn muutokset sekä mahdollisuus käyttää kutakin teknologiaa sille parhaiten
Haasteita ovat hajautetun järjestelmän kompleksisuus, tiedon konsistenssin hallinta, hajautuneet transaktiot, testaus- ja observability-haasteet sekä turvallisuus- ja
Yleisiä käytäntöjä ovat API gateway, service mesh, tapahtumavetoinen arkkitehtuuri sekä domain-driven designin periaatteet. Toteutuksessa voidaan hyödyntää