Kursplan
Introduksjon
- System- og tjenestearkitektur, PaaS og skybasert design
Oversikt over monolittisk systemarkitektur
- Kjøre en hel monolittisk applikasjonsfunksjonalitet i en enkelt prosess
- Scalaevne gjennom replikering på tvers av flere servere
- Protokoller brukt i monolitiske systemer: EAI, CORBA, etc.
Oversikt over webtjenester
- Service Oriented Architecture (SOA) og Microservices Arkitektur
Service-Oriented Architecture (SOA)
- Fordeler og kostnader ved SOA
- Suksesser og feil ved implementering av SOA
- Meldinger og ESB
- Infrastruktur og verktøy som støtter SOA
Hvordan Microservices Implementere webtjenestekonsepter
- Gjør en ting og gjør det bra
- DevOps
- Kontinuerlig distribusjon og levering (kontinuerlig integrasjon, kontinuerlig byggeprosess, etc.)
- Lette protokoller
Microservice protokoller og standarder
- HTTP, JMS, AMQP, Websockets, JSON, etc.
Utviklingsrammer for bygning Microservices
- Java-baserte rammeverk (Spring Cloud)
- Javaskriptbaserte rammeverk (Seneca)
Dekomponere en monolittapplikasjon
- Utvikle uavhengig distribusjonsbare applikasjoner
- Organisering av mikrotjenesteapplikasjoner rundt forretningsfunksjoner
- Kasusstudie: Migrering av en monolittapplikasjon til tre kjernemikrotjenester
Sette opp et Spring Cloud utviklingsmiljø
- Sette opp Docker og Docker Compose
- Stille inn miljøvariabler
Oversikt over Spring Cloud og Spring Boot
- Spring Cloud delprosjekter: Config Server & Bus, Eureka, Ribbon, Feign og Hystrix
- Spring Boot
Opprette en Spring Boot applikasjon
Sentralisert, versjonert konfigurasjonsadministrasjon med Spring Cloud Config
Dynamiske konfigurasjonsoppdateringer med Spring Cloud Bus
Tjenesteoppdagelse med Eureka
Lastbalansering med Ribbon
Bruk av effektbrytere med Hystrix
Deklarative REST-klienter med Feign
Jobber med API Gateway
Sikring av en mikrotjenesteapplikasjon
Sporing av mikrotjenester for å avdekke ventetider
Utplasserer Microservices
- Beholdere (Docker, K8N, LXC, osv...)
- Configuration Management (Ansible, osv...)
- Tjenesteoppdagelse
- Overvåke og administrere Microservices
- Infrastruktur for Microservices
Sky og auto Scalaevne på Microservices
- Microservice redundans og fail-over
- Ytelsesskalerbarhet for Microservices
- Automatisk skalerbarhet
- Implementering av Microservices på OpenStack, AWS og andre skyplattformer
Feilsøking av vanlige problemer for distribuerte applikasjoner
- Økosystemets kompleksitet
- Nettverksytelse
- Sikkerhet
- Utplassering
- Testing
- Nano-tjenester
Endelige vurderinger for å bygge produksjonsklare systemer
- Gjør systemet enkelt for nybegynnere
- Gjør systemet komplett slik at det kan tjene som grunnlaget for bedriftsapplikasjoner
Oppsummering og konklusjon
Krav
- En forståelse av programvare og systemutvikling
- Java utviklingserfaring
- Erfaring med Spring Framework
Publikum
- Java utviklere som ønsker å raskt bygge og distribuere mikrotjenester
- Systemarkitekter som ønsker å implementere en mikrotjenestearkitektur
Referanser (5)
Øvelser i EA.
Pawel - Krajowa Szkola Skarbowosci
Kurs - UML in Enterprise Architect (workshops)
Maskinoversatt
Det var dynamiskt og svært praktisk, i tillegg til at vi fikk en virtuell maskin gjennom en URL.
Aida - ENGINEERING AND SERVICES JF S.A. DE C.V.
Kurs - Spring Cloud for Microservices
Maskinoversatt
-Lærerens kunnskap om emnet var virkelig god. Han klarte å forklare veldig godt og kunne svare på alle spørsmålene umiddelbart. -Å vite hva verktøyet faktisk kan gjøre, var virkelig bra. -Strukturen han presenterte, som å bruke scenarier og sporbarhet, vil være veldig nyttig i min daglige jobb.
Harsha Jain - Scania CV AB
Kurs - Introduction to Enterprise Architect
Maskinoversatt
Stort kunnskapsnivå.
Marie - Forsvarets forkningsinstitutt
Kurs - Systems Modeling with SysML and Enterprise Architect (EA)
Maskinoversatt
Praktiske eksempler og åpne diskusjoner
Nenad Terzic - Pejsejf B"lgaria EOOD
Kurs - Building Microservices with Spring Cloud and Netflix OSS
Maskinoversatt