Korporacyjna Magistrala Usług na przykładzie Oracle Service Bus
LICZBA DNI: 3 (24h)
KOD KURSU: ESB/OSB
O szkoleniu
DLA KOGO?
Szkolenie adresowane jest do programistów Java, analityków systemowych oraz architektów pragnących poznać techniki budowy korporacyjnej magistrali usług (ESB, Enterprise Service Bus)
WYMAGANIA
Od uczestników wymagana jest przynajmniej podstawowa umiejętność programowania w języku Java, przynajmniej podstawowa znajomość usług WebService oraz technologii przetwarzania XML
Zalecana jest również znajomość podstaw Java EE
ZALETY
Szkolenie jest realizowane w kilku wariantach - dla programistów, dla analityków systemowych, architektów. W zależności od grupy szkoleniowej, główny nacisk położony jest na kwestie teoretyczne lub na praktyczne i implementację rozwiązań integracyjnych
Cele szkolenia
Zapoznanie uczestników z podstawowymi pojęciami oraz standardami związanymi z integracją systemów i szyną ESB
Przedstawienie dobrych i złych praktyk integracji, dostępnych na rynku narzędzi
Zapoznanie z wzorcami integracyjnymi i metodami realizacji tych wzorców na szynie ESB
Zdobycie praktycznych umiejętności związanych z produktem Oracle Service Bus (OSB)
Program
Podstawy integracji aplikacji korporacyjnych
- Sposoby integracji systemów i rodzaje architektury
- Podstawowe pojęcia i koncepcje związane z integracją systemów: silos, SOA, EIP, MEP, EAI, ESB, szyna usług, szyna danych, ETL, CMD, MOM, broker i adapter integracyjny, orkiestracja, integracja synchroniczna/asynchroniczna/offline, WS-* itd.
- Różnice pomiędzy szyną usług, platformą integracyjną, brokerem integracyjnym, serwerem kolejek itd.
- Przesłanki za i przeciw wdrażaniu platformy integracyjnej, cel wdrażania platformy integracyjnej w przedsiębiorstwie, migracja istniejących systemów „na szynę usług”
Cechy i funkcjonalności platformy ESB
- Pomijalność lokalizacji
- Konwersja protokołów transportowych
- Transformacja wiadomości
- Routing wiadomości
- Uwydatnienie wiadomości
- Zabezpieczenia na szynie usług
- Monitorowanie i zarządzanie
- Wydajność
- Interoperacyjność
- Standaryzacja
Przegląd i porównanie dostępnych na rynku narzędzi i technologii
- Komercyjne i niekomercyjne
- Dojrzałe i rozwijające się
- Bardziej i mniej popularne
- Wg. pozostałych kryteriów
Omówienie platformy Oracle Service Bus (OSB)
- Pojęcia i terminologia podstawowa dla OSB
- Proxy service
- Business service
- Message flow (transport layer, binding layer, processing layer)
- Request pipeline, Response pipeline, Error pipeline
- Endpoints, Actions
- Service Accounts
- Message, Message Context
- Gotowe do użycia komponenty OSB
- Nodes (Route, Stage, Branch itd.)
- Route (Dynamic Routing, Routing, Routing table itd.)
- Communication (Publish, Service Callout itd.)
- Flow control (For each, If then, Reply itd.)
- Message Processing (Assign, Replace, Java Callout itd.)
- Reporting (Alert, Log, Report)
- Przegląd wspieranych protokołów transportowych m.in. File, HTTP(S), JMS, Email
- Architektura Oracle SOA Suite i miejsce szyny OSB w referencyjnym modelu SOA wg. Oracle. Omówienie integracji OSB z pozostałymi komponentami Oracle SOA: BPM, BPEL, BAM, ODI, ODSI, Enterprise Repository, SOA Suite
- Testowanie usług za pomocą Oracle Service Bus Console
- Generowanie testowych komunikatów
- Weryfikacje odpowiedzi usług
- Trace’owanie komunikatu poprzez message flow
- Monitorowanie, administrowanie i konfiguracja usług poprzez OSB Web Console
- Jakość realizacji usług przez platformę OSB (mechanizmy realizacji: wysokiej dostępności, odporności na awarie, równoważenia obciążenia, persystencji, transakcyjności i bezpieczeństwa)
- Podobieństwa i różnice względem innych platform ESB (komercyjnych i open source)
- Środowisko programistyczne - Oracle JDeveloper, OSB Web Console
Najczęściej stosowane wzorce integracyjne (EIP - Enterprise Integration Patterns) oraz ich sposób realizacji przy użyciu platformy OSB
- Kanał
- Wiadomość
- Usługa
- Filtr
- Router
- Transformator
- Endpoint
- Omówienie pozostałych popularnych wzorców
Praca z obsługą komunikatów
- Struktura komunikatu
- Typy i formaty komunikatów
- Transformacja i konwersja komunikatów
- Walidacja komunikatów
- Persystencja komunikatów
Praca z usługami
- Konstrukcja usługi
- Typy usług
- Kontrakt usługi
- Konfigurowanie usług
Aranżacja usług i routing wiadomości na szynie
- Rejestry i repozytoria usług
- Routing na szynie ESB
- Routing ze względu na treść (CBR - Content Based Routing)
- Notyfikacje
Jakość realizacji usług
- Replikacja usług
- Klastrowanie na poziomie usług i protokołów transportowych
- Ponawianie komunikatów
- Monitorowanie i zarządzanie usługami
- Wdrażanie zmian (hot deployment)
- Pozostałe
Zabezpieczanie usług
- Bezpieczne usługi na szynie OSB
- Uwierzytelnianie i autoryzacja
- Szyfrowanie danych na szynie
Obsługa błędów i sytuacji wyjątkowych
- Ponawianie
- Kompensacja
- Wycofywanie
- Przetwarzanie transakcyjne
Wydajność
- Strojenie (tuning) parametrów usług (protokół transportowy, ilość wątków, itp.)
- Cache
- Strojenie parametrów środowiska uruchomieniowego (Java, serwer aplikacyjny, serwer kolejek, baza danych, itp.)
Testowanie usług na szynie ESB
- Metody i narzędzia wspomagające testowanie usług (automatyzacja)
Zaawansowane usługi na szynie ESB
- Różnica pomiędzy przepływem integracyjnym, orkiestracją usług (BPEL), a procesem biznesowym (BPM)
- Wsparcie dla procesów biznesowych (BPM) i orkiestracji usług (BPEL)
- Wsparcie dla reguł biznesowych (BRMS)
- Wsparcie dla przetwarzania strumieni zdarzeń (CEP)
Przegląd najczęściej stosowanych adapterów integracyjnych
Dobre i złe praktyki budowy rozwiązań integracyjnych w oparciu o szyny ESB
- Często spotykane praktyki
- Zalecane wzorce projektowe oraz anty-wzorce których należy unikać
- Zalecane protokoły komunikacyjne
