Sisällysluettelo:
Mikropalvelut, vaikkakaan ei ole tarkalleen uusi käsite tai käytäntö, ovat määritelleet ohjelmistokehityksen uudelleen monin tavoin. Mikropalvelut voivat korvata monoliittiset sovellukset, ja ne vastaavat paremmin yritysten muuttuvia liiketoiminnan tarpeita. Tyypillinen monoliittinen sovellus on itsenäinen ohjelmistosovellus, jossa kaikki komponentit on tiukasti kytketty toisiinsa. Jos johonkin komponenttiin kohdistuu vaikutus jostakin syystä, vaikutus kohdistuu koko sovellukseen. Esimerkiksi yhden komponentin muutos voi vaatia järjestelmän täydellisen regression ja täyden käyttöönoton. Monoliittisia sovelluksia pidetään joustamattomina järjestelminä, ja yritykset käyttävät paljon resursseja tällaisten sovellusten ylläpitämiseen. Toisaalta mikropalvelut ovat osoittautuneet ketterämmiksi ja joustavammiksi. Ne ovat pieniä, itsenäisiä ja uudelleenkäytettäviä palveluita, joita voidaan muokata ja ottaa käyttöön itsenäisesti. Tämän avulla yritykset voivat säästää paljon investointeja. Vaikka ei voida sanoa, että mikropalveluita käytetään yleisesti, on olemassa joitakin rohkaisevia tapaustutkimuksia. (Lisätietoja tekniikan kehityksestä on artikkelissa Autonomiset järjestelmät ja ihmisten herättäminen keskiohjelmasta.)
Mitä mikropalvelut ovat?
Microservices on arkkitehtoninen tyyli kehittää yksi ohjelmistosovellus yhdistelmällä pieniä, riippumattomia palveluita. Ajatuksena on pystyä toimimaan tai muokkaamaan kutakin palvelua eristetyllä tavalla siten, että toisin kuin monoliittisten sovellusten tapauksessa, koko ohjelmistosovellus ei vaikuta päivityksen vuoksi. Jokaisella palvelulla on omat prosessinsa ja se kommunikoi kevyessä mekanismissa - usein HTTP-resurssien verkkopalvelun avulla.
Mikropalveluarkkitehtuurin ominaisuuksien ymmärtämiseksi voi olla aiheellista verrata sitä monoliittisiin ohjelmistojärjestelmiin. Seuraava taulukko sisältää tärkeimmät erot monoliittisten ja mikropalvelun ohjelmistojärjestelmien välillä.