Separat Microservices Projekt (Uge 45‐48) - Tobbekjaer/Portfolio GitHub Wiki
Separat Microservices Projekt (Uge 45-48)
Mål
- Viden: Få en dyb forståelse af microservices-arkitektur, designprincipper, og hvordan microservices kan implementeres med .NET.
- Færdigheder: Udvikle microservices fra bunden, håndtere dedikerede persistence-lag, anvende API Gateway patterns, og etablere både synkron og asynkron kommunikation.
- Kompetencer: Bygge og teste en fungerende microservices-løsning med Platform Service og Commands Service, samtidig med at lære best practices for microservices-udvikling.
Læringsaktiviteter
- Teori og designprincipper: Læs bogen "Microservices in .NET", som har sit primære fokus på at forstå grundlæggende design og arkitektur frem for teknologien bag.
- Praktisk udvikling: Følg ".NET Microservices Full Course" for hands-on erfaring med at bygge og deploye microservices, herunder brug af Kubernetes og RabbitMQ.
- Projekt: Udvikl en microservices-løsning, hvor:
- Platform Service registrerer nye platforme (fx .NET, Docker).
- Commands Service håndterer oprettelse af commands for platforme og viser dem via REST API.
Projekter
- Microservices i .NET (bog): Fokus på designprincipper og arkitektoniske overvejelser.
- Microservices Demo Project Implementér en microservices-løsning med følgende komponenter:
- To .NET microservices (Platform Service og Commands Service).
- Dedikerede databaser til hver service.
- En API Gateway til at route requests.
- Synkron kommunikation (HTTP).
- Asynkron kommunikation via Event Bus (RabbitMQ).
Evaluering af Læringscirkel 6: Microservices Projekt
Jeg indså, at vores semesterprojekt ikke ville drage fordel af en microservices-arkitektur, så jeg valgte at køre et sideløbende projekt for at udforske området. Denne læringscirkel har virkelig styrket mine kompetencer og lært mig, hvordan microservices kan designes og implementeres effektivt, samtidig med at jeg udfordrer mig selv teknologisk. Jeg har fået en god forståelse for arkitektur-opbygningen, fordele og ulemper ved, at hver service har deres eget persistenslag samt forskellen på synkron og asynkron kommunikation mellem services. Jeg er glad for, at jeg tog beslutningen om at arbejde selvstændigt med microservices sideløbende på vores semesterprojekt - mit læringsudbytte har været markant højere på den måde. Der er lang vej endnu, men det har været et utroligt læringsrigt emne, at beskæftige sig med på 4. semester.