Sam Newman budowanie mikrousług. projektowanie drobnoziarnistych systemów. wydanie ii helion.pdf

(13160 KB) Pobierz
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis treści
Przedmowa ......................................................................................................................... 15
CZĘŚĆ I. Podstawy
Mikrousługi w skrócie
Kluczowe pojęcia dotyczące mikrousług
Możliwość niezależnego wdrażania
Zamodelowane wokół domeny biznesowej
Posiadanie własnego stanu
Rozmiar
Elastyczność
Dopasowanie architektury do organizacji zespołów
23
25
28
28
28
30
30
31
32
1. Czym są mikrousługi? ................................................................................................ 25
Monolit
Monolit jednoprocesowy
Monolit modułowy
Monolit rozproszony
Monolity i rywalizacja o dostawy
Zalety monolitów
35
36
37
38
38
39
Technologie pomocnicze
Agregacja logów i rozproszone śledzenie
Kontenery i Kubernetes
Przesyłanie strumieniowe
Chmura publiczna i platformy bezserwerowe
39
40
41
42
42
Najważniejsze korzyści
Niejednorodność technologii
Odporność na błędy
Skalowanie
Łatwość wdrażania
Dopasowanie do organizacji zespołów
Komponowalność
43
43
44
44
45
46
46
3
Kup książkę
Poleć książkę
Niedogodności związane z architekturą mikrousług
Wrażenia programisty
Przeciążenie technologią
Koszty
Raportowanie
Monitorowanie i rozwiązywanie problemów
Bezpieczeństwo
Testowanie
Opóźnienia
Spójność danych
47
47
47
48
48
49
50
50
50
51
Czy powinienem korzystać z mikrousług?
Kiedy mikrousługi mogą się nie sprawdzić?
Gdzie mikrousługi działają dobrze?
51
52
53
Podsumowanie
54
2. Jak modelować mikrousługi? ..................................................................................... 55
Przedstawiamy firmę MusicCorp
Co decyduje o tym, że granice mikrousługi są dobre?
Ukrywanie informacji
Spójność
Sprzężenia
Wzajemne oddziaływanie pomiędzy sprzężeniami a spójnością
55
56
56
57
58
58
Rodzaje sprzężeń
Sprzężenie domen
Sprzężenia przelotowe
Sprzężenie wspólnych danych
Sprzężenia treści
59
60
62
65
68
Wprowadzenie do metodologii projektowania opartego na domenie (DDD)
Język wszechobecny
Agregat
Kontekst ograniczony
Mapowanie agregatów i kontekstów ograniczonych na mikrousługi
Event Storming
70
71
71
74
76
77
Projektowanie DDD w kontekście mikrousług
Alternatywy dla granic domen biznesowych
Ulotność
Dane
Technologia
Względy organizacyjne
79
80
80
81
83
83
Modele mieszane i wyjątki
Podsumowanie
85
86
4
|
Spis treści
Kup książkę
Poleć książkę
3. Dzielenie monolitu .................................................................................................... 87
Określenie celu
Migracja przyrostowa
Monolit rzadko jest Twoim wrogiem
Niebezpieczeństwa przedwczesnej dekompozycji
87
88
89
89
Co podzielić najpierw?
Dekompozycja według warstwy
Najpierw kod
Najpierw dane
90
91
92
93
Przydatne wzorce dekompozycji
Wzorzec figowca-dusiciela
Uruchamianie równoległe
Przełącznik funkcji
94
94
95
95
Problemy z dekompozycją danych
Wydajność
Integralność danych
Transakcje
Narzędzia
Bazy danych raportowania
95
95
98
98
99
99
Podsumowanie
100
4. Rodzaje komunikacji mikrousług ..............................................................................101
Od komunikacji wewnątrz procesu do komunikacji między procesami
Wydajność
Modyfikacje interfejsów
Obsługa błędów
101
101
102
103
Technologia komunikacji między procesami: wiele możliwości do wyboru
Style komunikacji mikrousług
Łącz i dopasowuj
104
105
106
Wzorzec komunikacja synchroniczna blokująca
Zalety
Wady
Gdzie stosować wzorzec?
106
107
107
108
Wzorzec komunikacja asynchroniczna nieblokująca
Zalety
Wady
Gdzie stosować wzorzec?
109
110
111
112
Wzorzec komunikacja za pośrednictwem współdzielonych danych
Implementacja
Zalety
Wady
Gdzie stosować wzorzec?
112
113
113
114
115
Spis treści
|
5
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin