Definisjon
Mikrotjenestearkitektur er en tilnærming til systemutvikling der en applikasjon deles opp i mange små, uavhengige tjenester - der hver tjeneste har ett klart ansvarsområde, sin egen datalagring og kommuniserer med andre tjenester via APIApplication Programming Interface - grensesnitt som lar systemer kommunisere med hverandre.-er (typisk RESTRepresentational State Transfer - arkitekturstil for APIer basert på HTTP og ressursorientert design. eller gRPCHøyytelse RPC-rammeverk fra Google - bruker Protocol Buffers for effektiv binær kommunikasjon mellom tjenester.) eller meldingskøer (KafkaDistribuert hendelsesstrømmeplattform for høyvolum sanntidsdatautveksling mellom systemer., RabbitMQÅpen kildekode-meldingskø for asynkron og pålitelig kommunikasjon mellom tjenester.). Mikrotjenester kontrasteres med monolittisk arkitektur der all funksjonalitet er samlet i én kodebase. Fordelene er uavhengig skalering, isolerte feildomener og muligheten for ulike teknologivalg per tjeneste. Ulempene er økt kompleksitet i drift (mange deploybare enheter), nettverkslatens mellom tjenester og behovet for robust observabilityEvnen til å forstå et systems interne tilstand ut fra dets utganger - bygget på de tre pilarene logging, metrikk og distribuert sporing.. I norsk energisektor er mange eldre KISKundeinformasjonssystem - kjernesystem hos kraftleverandører og nettselskaper for kundehåndtering og fakturering.- og MDMMeter Data Management - system for innsamling, lagring og validering av store mengder måledata.-systemer monolittiske - mens nyere plattformer som SAMTYGDTvimennings plattform for Elhub-integrasjon - håndterer alle meldingstyper og prosesser mot Elhub. er bygget på mikrotjenestearkitektur i skyinfrastruktur.