API-er og mikrotjenester

API-er og mikrotjenester 

Mange datasystemer utfører kompliserte oppgaver. Etter hvert som disse systemene utvikles til å løse nye oppgaver, vokser kompleksiteten, de blir mer sårbare og det blir stadig vanskeligere å videreutvikle dem.  

En måte å forsøke å løse dette problemet på, er å dele systemets oppgave opp i flere mindre biter. Deretter lager man flere, mindre systemer som løser hver sin deloppgave – i stedet for å lage ett stort system. Denne løsningsmetoden kalles mikrotjenester. 

For at mikrotjenester skal fungere, må alle de små systemene klare å samarbeide slik at de til sammen løser den totale oppgaven. Samarbeidet reguleres av API-ene, og gode API-er er en essensiell ingrediens for at hele systemet skal fungere på en robust måte. 

For eksempel: Si at tjenesten er en reise-app. En av funksjonene er at den lar deg regne ut hva det vil koste å utføre en betaling i en bestemt valuta. Appen sitter ikke på disse valutakursene selv, men bruker et API mot et banksystem – nærmere bestemt mot en helt konkret komponent som regner om fra en valuta til en annen. Ved å sende et kall (en forespørsel) til denne komponenten gjennom API-et, kan appen kjapt hente ut dagens kurs og vise deg den korrekte prisen.  

Dersom de som utvikler appen ønsker å bytte fra en type database til en annen for valutakurs-komponenten (kanskje de starter et samarbeid med en annen bank), kan de gjøre det uten at noen andre tjenester trenger å endre seg – så lenge API-et mot den andre banken er likt. Slike mikrotjenester gjør dermed totalløsningen mer robust og fleksibel.