Kurzusleírás
Bevezetés
- Rendszer- és szolgáltatásarchitektúra, PaaS és felhőalapú tervezés
A monolitikus rendszerarchitektúra áttekintése
- Egy teljes monolitikus alkalmazásfunkció futtatása egyetlen folyamatban
- ScalaLehetőség több kiszolgálón keresztüli replikáció révén
- Monolitikus rendszerekben használt protokollok: EAI, CORBA stb.
A webszolgáltatások áttekintése
- Service Oriented Architecture (SOA) és Microservices Architecture
Service-Oriented Architecture (SOA)
- A SOA előnyei és költségei
- Sikerek és kudarcok a SOA megvalósításában
- Üzenetküldés és ESB
- SOA-t támogató infrastruktúra és eszközök
Hogyan Microservices implementálja a webszolgáltatási koncepciókat
- Csinálj egy dolgot, és csináld jól
- DevOps
- Folyamatos telepítés és szállítás (folyamatos integráció, folyamatos építési folyamat stb.)
- Könnyű protokollok
Mikroszolgáltatási protokollok és szabványok
- HTTP, JMS, AMQP, Websockets, JSON stb.
Építési fejlesztési keretek Microservices
- Java-alapú keretrendszerek (Spring Cloud)
- Javascript-alapú keretrendszerek (Seneca)
Monolit alkalmazás bontása
- Önállóan telepíthető alkalmazások fejlesztése
- Mikroszolgáltatási alkalmazások szervezése az üzleti lehetőségek köré
- Esettanulmány: Monolit alkalmazás migrálása három központi mikroszolgáltatásba
Spring Cloud Fejlesztési környezet felállítása
- A Docker és Docker Compose beállítása
- Környezeti változók beállítása
Spring Cloud és Spring Boot áttekintése
- Spring Cloud alprojektek: Config Server & Bus, Eureka, Ribbon, Feign és Hystrix
- Spring Boot
Spring Boot alkalmazás létrehozása
Központi, verziószámú konfigurációkezelés Spring Cloud Config
Dinamikus konfigurációfrissítések Spring Cloud busszal
Szolgáltatások felfedezése az Eurekával
Terheléskiegyenlítés szalaggal
Megszakítók alkalmazása Hystrix-szel
Deklaratív REST kliensek a Feign segítségével
Az API Gateway használata
Mikroszolgáltatási alkalmazás biztonságossá tétele
Mikroszolgáltatások nyomon követése a késések feltárására
Telepítés Microservices
- Konténerek (Docker, K8N, LXC stb...)
- Configuration Management (Ansible stb...)
- Szolgáltatás felfedezése
- Felügyelet és irányítás Microservices
- Infrastruktúra a Microservices számára
A Microservices felhő és automatikus Scalaképessége
- Mikroszolgáltatás redundancia és feladatátvétel
- Teljesítmény méretezhetősége a Microservices számára
- Automatikus méretezhetőség
- A Microservices megvalósítása OpenStack, AWS és más felhőplatformokon
Az elosztott alkalmazások gyakori problémáinak elhárítása
- Az ökoszisztéma összetettsége
- Hálózati teljesítmény
- Biztonság
- Telepítés
- Tesztelés
- Nano-szolgáltatások
Utolsó szempontok a gyártásra kész rendszerekhez
- A rendszer egyszerűvé tétele kezdők számára
- A rendszer teljessé tétele, hogy a vállalati alkalmazások alapjául szolgálhasson
Összefoglalás, és következtetés
Követelmények
- A szoftver- és rendszermérnöki ismeretek
- Java fejlesztési tapasztalat
- Tapasztalat: Spring Framework
Közönség
- Java fejlesztők, akik gyorsan szeretnének mikroszolgáltatásokat építeni és telepíteni
- Rendszertervezők, akik mikroszolgáltatási architektúrát kívánnak megvalósítani