T1123

Introduktion till CQRS och Event Sourcing

Trött på att utveckla monolitiska applikationer som är omöjliga att underhålla?
Hur får man ett stort system att skala? Vad gör man när databaslagret övergår från att vara en hjälp till att vara ett problem? Hur skall man skapa sin arkitektur så att den är lätt att förstå, utveckla, testa och underhålla?

I den här kursen presenteras CQRS (Command/Query Responsibility Segregation), som erbjuder ett sätt att tänka kring dessa frågor: en separation av skrivningar och läsningar gör att man kan optimera för de helt olika krav som ställs på dem. Event Sourcing - att basera sin datamodell på uppdateringar istället för på ögonblickstillstånd - passar särskilt bra med CQRS, och vi kommer att prata om hur.

Innehåll:

Dag 1

Två världar

  • CRUD
  • Avsiktlighet

Introduktion till Domän-Driven Design

  • Domäner och domänmodeller
  • "Ubiquitous language"
  • Aggregat
  • Bounded contexts

Grunder

  • Normalisering och denormalisering
  • Publish/subscribe

CQRS, konceptet

  • Commands/queries - separation
  • DTO-er
  • Meningsfulla operationer och namngivning
  • Read-side/write-side
  • Mappers

Command handlers

  • ACK/NAK
  • Validering
  • Autentisering, loggning, etc.
  • Flödet från klient till aggregat

Dag 2

Events

  • Från en strukturell modell till en modell av händelser
  • Commands kontra events
  • Event sourcing
  • Snapshots

Testning

  • Testning av beteende
  • BDD

Skalbarhet

  • Skala upp kontra skala ut
  • Eventual consistency

Read sides

  •  SQL eller noSQL
  •  Flera read sides

Projektstruktur

  • Klient, write side, read side
  • Synkroniserad utveckling
  • Outsourcing

Andra relevanta kurser:

T20112 - Software Architecture

Fakta

Kurs
T1123
Längd
2 dagar
Pris
14.200 kr (exkl. moms)

Stockholm

Göteborg

Malmö

Bookmark and Share

Förkunskaper

Inga speciella förkunskaper krävs

Kursmaterial

Kursmaterial på svenska ingår.

I samarbete med:

Kontakta oss
för mer information:

08 - 587 116 10 (Stockholm)
031 - 773 07 90 (Göteborg)
040-662 20 60 (Malmö)
info@informator.se