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
Referanser (5)
Kanskje flere øvelser kunne vært bedre for lerning, men tiden var for liten
Gianpiero Arico' - Urmet Spa
Kurs - Embedded Linux Systems Architecture
Maskinoversatt
Øv øvelser i EA.
Pawel - Krajowa Szkola Skarbowosci
Kurs - UML in Enterprise Architect (workshops)
Maskinoversatt
-Knowledge of the teacher in the subject was really good. He was able to explain very nicely and was able to answer all the questions at that moment. -To be able to know what all the tool is capable of was really good. -The structure he showed, like using scenarios and traceability would be really helpful in my day-to-day work.
Harsha Jain - Scania CV AB
Kurs - Introduction to Enterprise Architect
Great knowledge.
Marie - Forsvarets forkningsinstitutt
Kurs - Systems Modeling with SysML and Enterprise Architect (EA)
The theory felt quite complete, we handled all important subjects. It was very nice we could zoom in on our use-case Achievements, which helped us with understanding the theory.