Szkolenie: Architektura rozwiązań rozproszonych
Podczas szkolenia "Architektura rozwiązań rozproszonych" uczestnicy zapoznają się z tematem budowania rozwiązań rozproszonych w oparciu o nowoczesne i popularne narzędzia.
- Trenerzy praktycy
- Kameralne grupy
Czas trwania szkolenia:3 dni (24h)
Kod kursu:ARCH/DISTR
Architektura rozwiązań rozproszonych
Cele szkolenia
Poznanie możliwości projektowania nowoczesnych rozwiązań rozproszonych.
Dogłębne wyjaśnienie praktycznych problemów napotykanych w trakcie wytwarzania aplikacji rozproszonych.
Nabycie umiejętności obsługi i wdrażania popularnych narzędzi do budowania systemów rozproszonych.
Dla kogo?
Programistów oraz architektów systemów, którzy chcą rozszerzyć umiejętności projektowania i implementowania nietrywialnych oraz nowoczesnych systemów rozproszonych.
Zalety
W ramach szkolenia "Architektura rozwiązań rozproszonych" stosujemy niezbędne i popularne narzędzia, które pozwalają na implementację ostatecznego rozwiązania (Apache Kafka, Flink, Spark).
Tematy teoretyczne oparte na przykładach do rozwiązania w ramach warsztatów.
Nastawienie na praktyczne przykłady, które moją pojawiać się w codziennej pracy przy złożonych systemach rozproszonych.
Wymagania
Znajomość podstaw wytwarzania oprogramowania.
Podstawy obsługi baz danych oraz pisania zapytań SQL.
Podstawowa umiejętność programowania w języku Java dla realizacji praktycznych przykładów.
Podstawowa obsługa konteneryzacji z wykorzystaniem dockera (możliwość podstawowej konfiguracji i uruchomienia kontenera oraz obsługa z użyciem docker-compose).
W cenie otrzymasz:
Materiały szkoleniowe
Certyfikat ukończenia szkolenia
W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Program szkolenia
Wprowadzenie do systemów rozproszonych
Czym jest system o architekturze rozproszonej
Cele stosowania systemów rozproszonych
Wyzwania związane z architekturą i infrastrukturą systemów rozproszonych
Architektura rozproszona vs inne style architektur systemów informatycznych
Formaty danych
Problemy tekstowych formatów danych
Binarne formaty danych
Zmiany w modelu a serializacja i deserializacja danych na przykładzie Protocol Buffers
Omówienie formatu Apache Avro jako alternatywnego binarnego formatu danych
Metody rozproszonej komunikacji
Problemy wynikające z używania protokołu TCP/IP
Standardowe podejście z wykorzystaniem REST
Komunikacja RPC
Budowanie rozprosznej komunikacji w stylu reaktywnym
Wzorce rezyliencji zapytań
Brokery wiadomości na przykładzie technologii Apache Kafka
Model aktorowy na przykładzie Apache Pekko (dawniej Akka)
Rozproszona warstwa persystencji
Zagadnienia i problemy związane z replikacją danych
Zagadnienia i problemy związane z shardingiem danych
Transakcje w rozproszonych systemach baz danych
Inne sposoby zapewniania spójności danych w środowiskach rozproszonych
Wymagania stawiane współczesnym systemom bazodanowych na przykładzie wybranych silników bazodanowych
Procesowanie danych
Styl Data Oriented Programming
Procesowanie danych w formie batchowej vs strumieniowej
Omówienie techniki Change Data Capture
Podstawy wzorca MapReduce
Analityczne procesowanie rozproszonych danych z wykorzystaniem Apache Spark
Podstawy wykorzystania technologii Apache Flink dla integracji danych
Checkpointing na przykładzie Apache Flink
Zastosowanie Apache Kafka w procesowaniu danych
Complex event processing (CEP)
Zagadnienia dev-ops w systemach rozproszonych
Load Balancing
Observability
Tworzenie i zbieranie metryk na przykładzie Micrometer