Mikrouslugi oparte na zdarzeniach Wykorzystywanie danych w organizacji na duza skale.pdf

(2198 KB) Pobierz
Tytuł oryginału: Building Event-Driven Microservices: Leveraging Organizational Data at Scale
Tłumaczenie: Lech Lachowski
ISBN: 978-83-283-7439-3
© 2021 Helion SA
Authorized Polish translation of the English edition of Building Event-Driven Microservices ISBN
9781492057895 © 2020 Adam Bellemare
This translation is published and sold by permission of O’Reilly Media, Inc.,
which owns or controls all rights to publish and sell the same.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Helion SA dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne
i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym
ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Helion SA nie ponoszą również
żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce.
Helion SA
ul. Kościuszki 1c, 44-100 Gliwice
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/miopzd
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis treści
Przedmowa ......................................................................................................................... 13
1. Dlaczego mikrousługi oparte na zdarzeniach? ............................................................ 17
Czym są mikrousługi oparte na zdarzeniach?
Wprowadzenie do projektowania dziedzinowego i kontekstów ograniczonych
Wykorzystywanie modeli dziedzin i kontekstów ograniczonych
Dopasowywanie kontekstów ograniczonych do wymagań biznesowych
Struktury komunikacji
Struktury komunikacji biznesowej
Struktury komunikacji implementacyjnej
Struktury komunikacji danych
Prawo Conwaya i struktury komunikacji
Struktury komunikacji w tradycyjnych systemach obliczeniowych
Opcja 1. Utworzenie nowej usługi
Opcja 2. Dodanie funkcjonalności do istniejącej usługi
Wady i zalety obu opcji
Kontynuacja scenariusza z zespołami
Sprzeczne naciski
Struktury komunikacji oparte na zdarzeniach
Zdarzenia są podstawą komunikacji
Strumienie zdarzeń zapewniają jedno źródło prawdy
Konsumenty przeprowadzają własne modelowanie i kwerendowanie
Komunikacja danych zostaje usprawniona w całej organizacji
Dostępne dane wspierają zmiany w komunikacji biznesowej
Asynchroniczne mikrousługi oparte na zdarzeniach
Przykładowy zespół korzystający z mikrousług opartych na zdarzeniach
Mikrousługi synchroniczne
Wady mikrousług synchronicznych
Korzyści ze stosowania mikrousług synchronicznych
Podsumowanie
17
19
20
20
22
22
22
23
23
25
25
26
26
27
28
28
28
28
29
29
30
30
31
31
32
33
34
3
Kup książkę
Poleć książkę
2. Podstawy mikrousług opartych na zdarzeniach .......................................................... 35
Budowanie topologii
Topologia mikrousługi
Topologia biznesowa
Zawartość zdarzenia
Struktura zdarzenia
Zdarzenie bez klucza
Zdarzenie encyjne
Zdarzenie z kluczem
Materializowanie stanu ze zdarzeń encyjnych
Definicje i schematy danych zdarzenia
Zasada pojedynczego źródła zapisu mikrousługi
Mikrousługi wyposażone w broker zdarzeń
Przechowywanie i serwowanie zdarzeń
Uwzględnianie czynników dodatkowych
Porównanie brokerów zdarzeń i brokerów komunikatów
Konsumowanie zdarzeń z niemutowalnego dziennika
Zapewnianie jednego źródła prawdy
Zarządzanie mikrousługami na dużą skalę
Umieszczanie mikrousług w kontenerach
Umieszczanie mikrousług w maszynach wirtualnych
Zarządzanie kontenerami i maszynami wirtualnymi
Podatek od mikrousług
Podsumowanie
35
35
36
37
37
38
38
38
39
41
41
41
42
43
44
45
47
47
48
48
48
49
50
3. Komunikacja i kontrakty danych ................................................................................ 51
Kontrakty danych opartych na zdarzeniach
Używanie bezpośrednich schematów jako kontraktów
Komentarze definicji schematu
W pełni funkcjonalna ewolucja schematu
Obsługa generatora kodu
Przełomowe zmiany schematu
Wybór formatu zdarzenia
Projektowanie zdarzeń
Mów prawdę, całą prawdę i tylko prawdę
Używaj pojedynczej definicji zdarzenia na strumień
Używaj najwęższych typów danych
Zachowuj specjalizację zdarzeń
Minimalizuj rozmiar zdarzeń
Angażuj potencjalne konsumenty w projektowanie zdarzeń
Unikaj zdarzeń jako semaforów lub sygnałów
Podsumowanie
4
Spis treści
Poleć książkę
51
52
52
53
54
55
57
57
58
58
58
59
62
62
62
63
Kup książkę
4. Integracja architektur opartych na zdarzeniach z istniejącymi systemami ................... 65
Czym jest uwalnianie danych?
Kompromisy związane z uwalnianiem danych
Konwersja uwolnionych danych na zdarzenia
Wzorce uwalniania danych
Frameworki uwalniania danych
Uwalnianie danych oparte na zapytaniach
Ładowanie zbiorcze
Ładowanie przyrostowe na podstawie znacznika czasu
Ładowanie na podstawie autoinkrementowanego identyfikatora
Kwerendowanie niestandardowe
Aktualizacja przyrostowa
Zalety aktualizacji opartej na zapytaniach
Wady aktualizacji opartej na zapytaniach
Uwalnianie danych oparte na dziennikach CDC
Zalety korzystania z dzienników magazynu danych
Wady korzystania z dzienników magazynu danych
Uwalnianie danych oparte na tablicach skrzynki nadawczej
Kwestie związane z wydajnością
Izolowanie wewnętrznych modeli danych
Zapewnianie kompatybilności schematu
Przechwytywanie danych o zmianach za pomocą wyzwalaczy
Dokonywanie zmian definicji danych w przechwytywanych zbiorach danych
Obsługa zmian definicji danych „po fakcie”
dla wzorców opartych na zapytaniach i dziennikach CDC
Obsługa zmian definicji danych dla wzorców opartych
na przechwytywaniu tablicy danych o zmianach
Zlewanie danych o zdarzeniach do magazynów danych
Wpływ zlewania i pozyskiwania danych na prowadzenie działalności biznesowej
Podsumowanie
66
66
68
69
70
70
70
71
71
71
71
72
72
73
75
75
75
77
77
79
82
85
86
86
87
87
89
5. Podstawy przetwarzania opartego na zdarzeniach ..................................................... 91
Tworzenie topologii bezstanowych
Transformacje
Rozgałęzianie i scalanie strumieni
Repartycjonowanie strumieni zdarzeń
Przykład: repartycjonowanie strumienia zdarzeń
Współpartycjonowanie strumieni zdarzeń
Przykład: współpartycjonowanie strumienia zdarzeń
92
92
93
93
94
95
95
Spis treści
Kup książkę
5
Poleć książkę
Zgłoś jeśli naruszono regulamin