Bądźmy w kontakcie

Plan Szkolenia

Wprowadzenie

  • Architektura systemu i usług, PaaS i projektowanie cloud-native

Przegląd architektury systemu monolitycznego

  • Uruchamianie całej funkcjonalności aplikacji monolitycznej w jednym procesie
  • Skalowalność poprzez replikację na wielu serwerach
  • Protokoły używane w systemach monolitycznych: EAI, CORBA itp.

Przegląd usług internetowych

  • Architektura zorientowana na usługi (SOA) i architektura mikrousług

Architektura zorientowana na usługi (SOA)

  • Korzyści i koszty SOA
  • Sukcesy i porażki we wdrażaniu SOA
  • Przekazywanie wiadomości i ESB
  • Infrastruktura i narzędzia wspierające SOA

Jak mikrousługi implementują koncepcje usług internetowych

  • Rób jedną rzecz i rób to dobrze
  • DevOps
  • Ciągłe wdrażanie i dostarczanie (Continuous Integration, Continuous Build Process itp.)
  • Lekkie protokoły

Protokoły i standardy mikrousług

  • HTTP, JMS, AMQP, Websockets, JSON itp.

Frameworki do budowania mikrousług

  • Frameworki oparte na Javie (Spring Cloud)
  • Frameworki oparte na Javascript (Seneca)

Dekompozycja aplikacji monolitycznej

  • Tworzenie niezależnie wdrażalnych aplikacji
  • Organizowanie aplikacji mikrousługowych wokół możliwości biznesowych
  • Studium przypadku: Migracja aplikacji monolitycznej do trzech podstawowych mikrousług

Konfiguracja środowiska programistycznego Spring Cloud

  • Konfiguracja Docker i Docker Compose
  • Ustawianie zmiennych środowiskowych

Przegląd Spring Cloud i Spring Boot

  • Podprojekty Spring Cloud: Config Server & Bus, Eureka, Ribbon, Feign i Hystrix
  • Spring Boot

Tworzenie aplikacji Spring Boot

Scentralizowane, wersjonowane zarządzanie konfiguracją z Spring Cloud Config

Dynamiczne aktualizacje konfiguracji z Spring Cloud Bus

Odnajdywanie usług z Eureka

Równoważenie obciążenia z Ribbon

Stosowanie wyłączników obwodowych z Hystrix

Deklaratywni klienci REST z Feign

Praca z API Gateway

Zabezpieczanie aplikacji mikrousługowej

Śledzenie mikrousług w celu wykrycia opóźnień

Wdrażanie mikrousług

  • Kontenery (Docker, K8N, LXC itp...)
  • Zarządzanie konfiguracją (Ansible itp...)
  • Odnajdywanie usług
  • Monitorowanie i zarządzanie mikrousługami
  • Infrastruktura dla mikrousług

Chmura i automatyczne skalowanie mikrousług

  • Nadmiarowość i fail-over mikrousług
  • Skalowalność wydajności dla mikrousług
  • Automatyczne skalowanie
  • Wdrażanie mikrousług na OpenStack, AWS i innych platformach chmurowych

Rozwiązywanie typowych problemów aplikacji rozproszonych

  • Złożoność ekosystemu
  • Wydajność sieci
  • Bezpieczeństwo
  • Wdrażanie
  • Testowanie
  • Nano-usługi

Ostateczne uwagi dotyczące budowania systemów gotowych do produkcji

  • Uproszczenie systemu dla początkujących
  • Upewnienie się, że system jest kompletny, aby mógł służyć jako podstawa dla aplikacji korporacyjnych

Podsumowanie i zakończenie

Wymagania

  • Zrozumienie inżynierii oprogramowania i systemów
  • Doświadczenie w programowaniu w Javie
  • Doświadczenie z frameworkiem Spring

Grupa docelowa

  • Programiści Java chcący szybko budować i wdrażać mikrousługi
  • Architekci systemów chcący wdrożyć architekturę mikrousług
 21 godzin

Liczba uczestników


Cena za uczestnika (netto)

Opinie uczestników (3)

Propozycje terminów

Powiązane Kategorie