Klienter, servere og API-er
Forstå samspillet mellom klienter og servere, og hvilken rolle Application Programming Interfaces (API-er) spiller i kommunikasjonen.
Klienter, servere og API-er er en gratis leksjon i Grunnleggende systemdesign for backendutviklere på CoddyKit. Dette er leksjon 1 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Grunnleggende systemdesign for backendutviklere, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Grunnleggende systemdesign for backendutviklere inneholder totalt 4 leksjoner.
Backend-systemer: Introduksjon
Velkommen til kjernekomponentene i et backend-system! Har De noen gang lurt på hvordan appene Deres kommuniserer med internett?
Bak enhver app finnes et kraftig backend-system. Det håndterer data og logikk og sørger for at alt fungerer som det skal. Vi begynner med å forstå den grunnleggende kommunikasjonen.
Møt klienten
Først skal vi se på klienten. Tenk på den som den delen av systemet De samhandler direkte med.
- Nettleseren Deres: Når De besøker et nettsted.
- Mobilappen Deres: For eksempel Instagram eller TikTok.
- Skrivebordsprogramvare: Programmer på datamaskinen Deres.
Klienter finnes vanligvis på enheten Deres, der de sender forespørsler og viser informasjon.
Møt serveren
Deretter har vi serveren. Dette er en kraftig datamaskin eller et program som tilbyr tjenester og data til klienter.
- Den «serverer» innhold, for eksempel nettsider eller bilder.
- Den lagrer og administrerer data, for eksempel brukerprofilen Deres.
- Den utfører komplekse operasjoner som klienten ikke kan utføre.
Servere befinner seg vanligvis i datasentre og er klare til å svare på klientforespørsler døgnet rundt.
Dialogen mellom klient og server
Klienter og servere kommuniserer gjennom en forespørsel–svar-modell. Det er som å stille et spørsmål og få et svar.
- Klienten sender en forespørsel: «Hei, server, gi meg de nyeste innleggene i feeden min!»
- Serveren behandler den: Den finner innleggene i databasen sin.
- Serveren sender et svar: «Her er innleggene dine!»
Denne konstante utvekslingen gjør moderne applikasjoner dynamiske.
Hva er et API?
Hvordan forstår klienter og servere hverandre? De bruker et API, som står for Application Programming Interface.
Et API kan sammenlignes med en meny på en restaurant. Det forteller hvilke retter (tjenester) som er tilgjengelige, og hvordan De bestiller dem (hvordan De lager en forespørsel). Det er et sett med regler og definisjoner som gjør det mulig for ulike programvarekomponenter å kommunisere.
API-er i praksis
Se for Dem værappen Deres. Når De åpner den, vet ikke appen (klienten) selv hvordan den skal hente værdata.
I stedet sender den en forespørsel til værtjenestens API (serveren). API-et angir nøyaktig hvordan De ber om været i en by, og hvilket format svaret skal ha. Serveren sender deretter tilbake aktuell temperatur, luftfuktighet og så videre.
API-kontrakten
API-er definerer en «kontrakt» mellom klienten og serveren. Denne kontrakten angir:
- Endepunkter: De bestemte URL-ene eller adressene forespørsler skal sendes til.
- Metoder: Handlinger som «hent data» (GET) eller «send data» (POST).
- Dataformater: Hvordan data skal struktureres, for eksempel JSON eller XML.
Denne kontrakten sørger for at begge sider snakker samme språk.
Hvorfor bruke API-er?
API-er er avgjørende av flere grunner:
- Modularitet: Tjenester kan bygges uavhengig av hverandre.
- Gjenbruk: Det samme API-et kan brukes av nett-, mobil- og andre klienter.
- Abstraksjon: Klienter trenger ikke kjenne til serverens interne kompleksitet.
- Sikkerhet: API-er kan kontrollere tilgangen til backend-ressurser.
De er ryggraden i moderne, sammenkoblede systemer.
Vanlig API-eksempel
De fleste web-API-er i dag følger den arkitektoniske stilen REST. De kan høre begreper som «RESTful API».
Når De skriver inn en URL i nettleseren, sender De ofte en GET-forespørsel til et webservers API for å hente en nettside. Når De sender inn et skjema, kan De sende en POST-forespørsel for å overføre data.
Sjekk forståelsen
Hvilken påstand beskriver best rollen et API har i kommunikasjonen mellom klient og server?
Oppsummering: Klienter, servere og API-er
Godt jobbet! I denne leksjonen har vi utforsket de grunnleggende elementene i backend-systemer:
- Klienter er de brukervendte delene som sender forespørsler.
- Servere er kraftige maskiner som behandler forespørsler og tilbyr data og tjenester.
- API-er er de viktige grensesnittene som definerer hvordan klienter og servere kommuniserer, og som sikrer en tydelig «kontrakt» for samhandlingen.
Å forstå disse rollene er avgjørende for å forstå hvordan moderne applikasjoner fungerer!
Lær deg Grunnleggende systemdesign for backendutviklere med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 12
- Leksjoner
- 48
Ofte stilte spørsmål
Er leksjonen «Klienter, servere og API-er» gratis?
Ja – hele teksten i «Klienter, servere og API-er» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Grunnleggende systemdesign for backendutviklere-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Grunnleggende systemdesign for backendutviklere inneholder totalt 4 leksjoner.
Hva lærer jeg i «Klienter, servere og API-er»?
Forstå samspillet mellom klienter og servere, og hvilken rolle Application Programming Interfaces (API-er) spiller i kommunikasjonen. Du øver på Grunnleggende systemdesign for backendutviklere med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Grunnleggende systemdesign for backendutviklere?
Ingen tidligere erfaring er nødvendig. Grunnleggende systemdesign for backendutviklere på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.
Hvor lang tid tar leksjonen «Klienter, servere og API-er»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Grunnleggende systemdesign for backendutviklere-leksjonen?
Ja. Alle Grunnleggende systemdesign for backendutviklere-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Klienter, servere og API-er
- Databaser og lagringsalternativer
- Lastbalanserere og caching
- Meldingskøer og asynkron behandling