Utforska arkitektur med mikrotjänster

Slutförd

I dag hör du ofta termen mikrotjänster. En mikrotjänst är en autonom, självständigt distribuerad och skalbar programvarukomponent.

De är små, fokuserade på att göra en sak bra och kan köra autonomt. Om en mikrotjänst ändras bör den inte påverka några andra mikrotjänster i ditt landskap.

Genom att välja en arkitektur för mikrotjänster skapar du ett landskap med tjänster som kan utvecklas, testas och distribueras separat. Det innebär andra risker och komplexitet.

Det vore bäst om du skapade den för att hålla reda på gränssnitt och hur de interagerar. Och du måste underhålla flera programlivscykler i stället för en.

Diagram som visar en mikrotjänstarkitektur med flera program.

I ett traditionellt program kan vi ofta se en arkitektur med flera lager.

Ett lager med användargränssnittet, ett lager med affärslogik och tjänster och ett lager med datatjänsterna.

Ibland finns det dedikerade team för användargränssnittet och serverdelen. När något behöver ändras måste det ändras i alla lager.

När du går mot en mikrotjänstarkitektur är alla dessa lager en del av samma mikrotjänst.

Endast mikrotjänsten innehåller en specifik funktion.

Interaktionen mellan mikrotjänsterna sker asynkront.

De anropar inte varandra direkt utan använder asynkrona mekanismer som köer eller händelser.

Varje mikrotjänst har sin livscykel och pipeline för kontinuerlig leverans. Om du har skapat dem korrekt kan du distribuera nya mikrotjänstversioner utan att påverka andra systemdelar.

Mikrotjänstarkitektur är utan tvekan inte en förutsättning för kontinuerlig leverans, men mindre programvarukomponenter hjälper till att implementera en helt automatiserad pipeline.