Mikropalvelu[1] on ohjelmistoarkkitehtuuri, joka rakentaa sovellusohjelman erillisistä palveluista jakamalla sen pienempiin osiin.[2][3]

Mikropalvelut ovat tarkoitettu käytettäväksi jatkuvan integraation ja jatkuvan toimituksen kehitysmallien yhteydessä.[4]

Käyttötapauksia muokkaa

Digitaalinen pankki Monzo on kertonut käyttävänsä 1 600:aa mikropalvelua järjestelmässään: järjestelmä käyttää Apache Cassandraa tietokannan hallintajärjestelmänä, Kubernetesia klusterin hallintaan ja Go-ohjelmointikieltä.[5] Jokainen mikropalvelu suoritetaan Docker-säiliöissä.[5] Menetelmän etuna mainitaan asteittaiset muutokset ja iteratiivinen menettely, jotka voittavat suuret harvinaiset muutokset.[5]

Kritiikkiä muokkaa

Mallia on sanottu käytettävän liiallisesti tilanteissa joihin se ei sovellu.[6] Pahimmassa tapauksessa palvelu on erillisinä osina, mutta sen osat otettava yhtä aikaa käyttöön.[6] Ongelmallisessa tilanteessa on palvelun käyttöönoton monimutkaisuus ilman etuja.[6]

Katso myös muokkaa

Lähteet muokkaa

  1. Hiren Dhaduk: A Guide on What Are Microservices: Pros, Cons, Use Cases, and More Simform - Product Engineering Company. 10.3.2022. Viitattu 26.6.2023. (englanniksi)
  2. Microservice Architecture microservices.io. Viitattu 4.3.2020. (englanniksi) 
  3. What are microservices? opensource.com. Viitattu 5.3.2020. (englanniksi)
  4. CI/CD for microservices architectures docs.microsoft.com. 27.3.2019. Viitattu 4.3.2020. (englanniksi)
  5. a b c Tim Anderson: How does Monzo keep 1,600 microservices spinning? Go, clean code, and a strong team theregister.co.uk. 9.3.2020. Viitattu 10.3.2020. (englanniksi)
  6. a b c Tim Anderson: Microservices guru warns devs that trendy architecture shouldn't be the default for every app, but 'a last resort' theregister.co.uk. 4.3.2020. Viitattu 4.3.2020. (englanniksi)