Ta kontakt

Kursplan

Dag 1: Grunnleggende kjennetegn ved hendingstrettet arkitektur i Go

  • Introduksjon til EDA
    • Hva er hendingstrettet arkitektur?/li>
    • Sammenligning av monolitisk, mikrotjenester og hendingstrettet systemer
    • Hvorfor Goms konkurrenseevne-modell og lette goroutines gjør det ideelt for EDA
  • Kjernebegreper og fordeler
    • Avkoppeling, skalerbarhet og robusthet i enterprise-systemer
    • Definisjon av henderinger, produsenter, forbrukere og hendelsesformidlere
    • Eksempler fra virkeligheten og kasestudier hvor Go driver høy ytelse i hendelsessystemer
  • CAP-teoremet og kompromisser i EDA
    • Overblikk over konsistens, tilgjengelighet og partisjonstoleranse
    • Effekten av EDA på disse egenskapene
    • Strategier for å balansere konsistens og tilgjengelighet i Go-baserte systemer

Dag 2: Henderinger, meldinger og kommunikasjonsmønstre i Go

  • Forståelse av hendelsestyper
    • Domene-hendelser kontra integrasjonshendelser
    • Synkrone kontra asynkrone henderinger i Go-applikasjoner
  • Meldingsmønstre i praksis
    • Publikasjon-abonnement (Pub/Sub) i Go
    • Hvordan designe og strukturere hendelseslast med JSON, Protocol Buffers eller Avro i Go
  • Implementering av hendingstrekning i Go
    • Overblikk over populære Go-biblioteker og rammeverk for meldingsutveksling
    • Kodeeksempler: utstedelse og behandling av henderinger med idiomatiske Go-mønstre
    • Praktisk økt: Bygge en enkel hendingstrettet tjeneste i Go

Dag 3: Meldingssystemer og hendelsesformidlere med Go

  • Valg og integrasjon av hendelsesformidlere
    • Overblikk over populære formidlere: Apache Kafka, RabbitMQ og NATS
    • Sammenligning av bruksområder og beste praksis for Go-baserte systemer
  • Oppsett av meldingsinfrastruktur
    • Docker Compose-oppsett for Kafka, RabbitMQ eller NATS
    • Konfigurasjon av emner, utvekslinger, køer og kanaler
    • Overblikk over Go-klientbiblioteker
  • Praktisk verksted
    • Bygge en eksempel Go-mikrotjeneste som produserer og forbruker henderinger
    • Integrasjon av tjenesten med valgt hendelsesformidler
    • Felsøking og testing av hendingssstrømmer

Dag 4: Levering, overvåking og avanserte emner i Go EDA

  • Levering av Go hendingstrettet applikasjoner på Kubernetes
    • Kapsling av Go-applikasjoner for produksjon
    • Levering av Kafka (eller andre formidlere) på Kubernetes-kluster
    • Innføring til KEDA (Kubernetes Event-Driven Autoscaling) for skalering av hendelsesforbrukere
  • Feilhåndtering og overvåking
    • Håndtering av hendelsesfeil med strategier
    • Implementering av observabilitet i Go-tjenester
  • Avanserte emner og Q&A
    • Utforskning av serverless hendingstrettet arkitektur med Go
    • Hendelseskoreografi kontra orkestrering: Bruksområder og designoverveielser
    • Vanlige fallgroppe, lærepunkter og beste praksis
    • Øpen Q&A-sesjon og interaktiv feilsøking

Krav

  • Faglig dyktighet i Go (Golang), inkludert bruk av goroutines og kanaler
  • Grunnleggende forståelse av programvarearkitekturmodeller som monolitter og mikrotjenester
  • Kjenntil med Docker og Docker Compose
  • Grunnleggende kunnskap om REST-APIer og nettverkskonsepter
  • Erfaring med kommandolinjeverktøy og Git
  • Valgfritt, men nyttig: tidligere erfaring med Kubernetes og meldingssystemer som Kafka, RabbitMQ eller NATS

Målgruppe

  • Go-utviklere som bygger skalerbare, hendingstrettet applikasjoner
  • Programvareingeniører som beveger seg fra monolitisk eller REST-basert arkitektur til asynkrone systemer
  • DevOps- og cloud-ingeniører som arbeider med kapslet eller distribuert mikrotjenester
  • Tekniske arkitekter og systemdesignere som utforsker EDA-mønstre med Go
 28 Timer

Antall deltakere


Pris per deltaker

Referanser (7)

Kommende kurs

Relaterte kategorier