Suomi.fi kehittäjille
Siirry suoraan sisältöön.
Hyvät käytännöt kehittäjille
Ohjelmointirajapintojen suunnittelu julkisessa hallinnossa

Pilko kokonaisuus osiin

Monoliittiarkkitehtuuri- ja mikropalveluarkkitehtuurityylien ero

Jos olette hankkimassa yhtä ohjelmointirajapintaa suurempaa kokonaisuutta, pilkkokaa hankinta osiin.

Pienet tietojärjestelmät on perinteisesti jaettu kolmeen osaan:

  1. käyttöliittymään
  2. liiketoimintatoteutukseen
  3. tietokantaan.

Suurissa järjestelmissä tämä jako ei kuitenkaan riitä. Kolmeen osaan jaettuna liiketoimintalogiikan määrä olisi merkittävä, ja tällaista arkkitehtuuria kutsutaan monoliittiseksi.

Suurten tietojärjestelmien kehityksessä aiemmin käytetty monoliittiarkkitehtuuri on pääosin korvautunut mikropalveluarkkitehtuurilla, jossa tietojärjestelmä on jaettu tiedon tai toimintojen kannalta aiempaa pienempiin osiin eli palveluihin. Nämä palvelut kommunikoivat toistensa kanssa ohjelmointirajapintojen kautta.

Monoliittiarkkitehtuuri- ja mikropalveluarkkitehtuurityylien ero.

Päivitetty: 5.5.2026

Rakenna tietojärjestelmä mikropalveluiden avulla

Mikropalveluarkkitehtuuri toteuttaa EU:n yhteentoimivuuden periaatteita paremmin kuin monoliittiarkkitehtuuri, koska se ei määrittele taustalla käytettäviä teknologioita ohjelmointirajapintojen osalta. Lisäksi se vähentää merkittävästi hanke- ja projektinhallinnan riskejä sekä toimittajariskiä. Suuri kokonaisuus voidaan toteuttaa pienissä osissa, aloittaen tärkeimmistä.

Hankintaa voidaan tehdä esimerkiksi osa tai laajempi kokonaisuus kerrallaan ja osia voi ostaa eri toimittajilta.

Mikropalveluiden toteutustavassa organisaation ulkopuolelle julkaistu ohjelmointirajapinta on usein melko suoraviivainen yhdistelmä sisäisiä ohjelmointirajapintoja. Mikropalvelun toiminta perustuu usein sen sisäisten ohjelmointirajapintojen tarjoamien toimintojen kokonaisuuteen.

Monet organisaatiot pyrkivät kehittämään ja dokumentoimaan järjestelmän sisäiseen käyttöön riittävät ohjelmointirajapinnat samalla työkalulla kuin ulkoiset ohjelmointirajapinnat. Jos sisäisten ohjelmointirajapintojen toiminnassa tavoitellaan korkeaa suorituskykyä, voidaan hallintajärjestelmä joskus ohittaa kokonaan tai osittain ja tehdä kysely suoraan. Lisäksi voidaan hyödyntää teknologioita, jotka on valittu ensisijaisesti suorituskyvyn vuoksi.

Päivitetty: 5.5.2026

Oletko tyytyväinen tämän sivun sisältöön?

Sanasto