Kursplan

Introduksjon til fordelte systemer

  • Hva er et fordelt system?
  • Vanlige utfordringer: forsinkelse, konsistens, tilgjengelighet
  • Oversikt over systemkomponenter og kommunikasjonsmodeller

Skalerbarhetsprinsipper

  • Vertikal vs. horisontal skalerbarhet
  • Lastfordeling og elastisitet
  • Skalerbar lagring, beregning og I/O

Arkitekturmønstre

  • Klient-server- og flerkjernearkitekturer
  • Tjenesteorientert og mikrotjenestearkitektur
  • Hendelsesdrevet arkitektur og meldingskøer

CAP-teoremet og konsistensmodeller

  • CAP-teoremet forklart
  • Stor vs. tilstrekkelig konsistens
  • Valg mellom konsistens og tilgjengelighet

Datafordeling og lagringsstrategier

  • Deling og sharding
  • Replikasjonsstrategier og kvorum-lesninger/skrivinger
  • Fordelte databaser og nøkkel-verdi-lagring

Kommunikasjon og samordning i fordelte systemer

  • REST, gRPC, meldingsformidlere (eks. Kafka, RabbitMQ)
  • Ledervalg og fordelt konsensus
  • Bruk av Zookeeper eller etcd for samordning

Feiltoleranse og pålitelighet

  • Design for feil og nedsatt ytelse
  • Gjentagelsesmekanismer, tidsfrister og kretsbrytere
  • Overvåking, observabilitet og kaos-engineering

Cloud-native og moderne implementeringsprinsipper

  • Containere, orkestrering og Kubernetes
  • Statelessness og immutability
  • Beste praksiser for sikkerhet i fordelte systemer

Oppsummering og neste steg

Krav

  • Forståelse av grunnleggende nettverks- og systemdesignkonsepter
  • Erfaring med generelle softwareutviklingspraksiser
  • Kjennskap til cloud computing og API-design er nyttig

Målgruppe

  • Softwarearkitekter og tekniske ledere
  • Back-end-ingeniører og DevOps-profesjonelle
  • Systemdesignere som bygger skalerbare cloud-applikasjoner
 21 timer

Antall deltakere


Pris per deltaker

Referanser (5)

Kommende kurs

Relaterte kategorier