Z - Helion
Tytuł oryginału: Software Architecture: The Hard Parts: Modern Trade-Off Analyses for Distributed Architectures
TÅ‚umaczenie: Piotr Pilch
ISBN: 978-83-283-9528-2
stron: 408, Format: ebook
Data wydania: 2022-11-01
Księgarnia: Helion
Cena książki: 49,50 zł (poprzednio: 99,00 zł)
Oszczędzasz: 50% (-49,50 zł)
Osoby które kupowały "Z", wybierały także:
- Superinteligencja. Scenariusze, strategie, zagro 66,67 zł, (14,00 zł -79%)
- Poradnik design thinking - czyli jak wykorzysta 48,28 zł, (14,00 zł -71%)
- Kosymulacja. Elastyczne projektowanie i symulacja wielodomenowa 38,39 zł, (11,90 zł -69%)
- F# 4.0 dla zaawansowanych. Wydanie IV 96,45 zł, (29,90 zł -69%)
- Systemy reaktywne. Wzorce projektowe i ich stosowanie 65,31 zł, (20,90 zł -68%)
Spis treści
Złożone zagadnienia architektury oprogramowania. Jak analizować kompromisy i podejmować trudne decyzje eBook -- spis treści
Przedmowa
Rozdział 1. Co się dzieje przy braku "najlepszych praktyk"?
- Skąd określenie "trudne kwestie"?
- Ponadczasowa rada dotyczÄ…ca architektury oprogramowania
- Ważność danych w architekturze
- Rekord decyzji dotyczÄ…cych architektury
- Funkcje dopasowania architektury
- Zastosowanie funkcji dopasowania
- Architektura a projekt: utrzymywanie definicji w prostej postaci
- Wprowadzenie do sagi zespoÅ‚u operatorów systemu
- Przepływ informacji bez zgłoszeń
- Przepływ informacji ze zgłoszeniami
- ZÅ‚y scenariusz
- Komponenty architektury aplikacji zespoÅ‚u operatorów systemu
- Model danych aplikacji zespoÅ‚u operatorów systemu
Część I. Rozdzielanie wszystkiego
Rozdział 2. Rozpoznawanie sprzężenia w architekturze oprogramowania
- Kwant (kwanty) architektury
- Możliwość niezależnego wdrażania
- Wysoki stopieÅ„ spójnoÅ›ci funkcjonalnej
- Wysoki poziom sprzężenia statycznego
- Dynamiczne sprzężenie kwantu
- Saga zespoÅ‚u operatorów systemu: zrozumienie kwantów
Rozdział 3. Modułowość architektury
- Czynniki modułowości
- Możliwość utrzymania
- Możliwość testowania
- Możliwość wdrażania
- Skalowalność
- Dostępność i odporność na błędy
- Saga zespoÅ‚u operatorów systemu: zapewnianie uzasadnienia biznesowego
Rozdział 4. Dekompozycja architektury
- Czy baza kodu umożliwia dekompozycję?
- Sprzężenie dośrodkowe i odśrodkowe
- Abstrakcyjność i niestabilność
- OdlegÅ‚ość od ciÄ…gu gÅ‚ównego
- Dekompozycja komponentowa
- Rozdzielanie taktyczne
- Kompromisy
- Saga zespoÅ‚u operatorów systemu: wybór metody dekompozycji
Rozdział 5. Wzorce dekompozycji komponentowej
- Wzorzec Identyfikowanie komponentów i okreÅ›lanie ich wielkoÅ›ci
- Opis wzorca
- Funkcje dopasowania służące do zarządzania
- Saga zespoÅ‚u operatorów systemu: okreÅ›lanie wielkoÅ›ci komponentów
- Wzorzec Gromadzenie wspólnych komponentów domeny
- Opis wzorca
- Funkcje dopasowania służące do zarządzania
- Saga zespoÅ‚u operatorów systemu: gromadzenie wspólnych komponentów
- Wzorzec Wyrównywanie komponentów
- Opis wzorca
- Funkcje dopasowania służące do zarządzania
- Saga zespoÅ‚u operatorów systemu: wyrównywanie komponentów
- Wzorzec OkreÅ›lanie zależnoÅ›ci komponentów
- Opis wzorca
- Funkcje dopasowania służące do zarządzania
- Saga zespoÅ‚u operatorów systemu: okreÅ›lanie zależnoÅ›ci komponentów
- Wzorzec Tworzenie domen komponentów
- Opis wzorca
- Funkcje dopasowania służące do zarządzania
- Saga zespoÅ‚u operatorów systemu: tworzenie domen komponentów
- Wzorzec Tworzenie usług domenowych
- Opis wzorca
- Funkcje dopasowania służące do zarządzania
- Saga zespoÅ‚u operatorów systemu: tworzenie usÅ‚ug domenowych
- Podsumowanie
Rozdział 6. Rozdzielanie danych operacyjnych
- Czynniki przemawiajÄ…ce za dekompozycjÄ… danych
- Elementy dezintegracji danych
- Elementy integracji danych
- Saga zespoÅ‚u operatorów systemu: uzasadnianie dekompozycji bazy danych
- Dekompozycja danych monolitycznych
- Krok 1: analizowanie bazy danych i tworzenie domen danych
- Krok 2: przypisanie tabel do domen danych
- Krok 3: rozdzielenie połączeń z bazą danych między domenami danych
- Krok 4: przeniesienie schematów na osobne serwery baz danych
- Krok 5: przełączenie na niezależne serwery baz danych
- Wybieranie typu bazy danych
- Relacyjne bazy danych
- Bazy danych z parami klucz-wartość
- Bazy danych dokumentów
- Kolumnowe bazy danych
- Grafowe bazy danych
- Bazy danych NewSQL
- Bazy danych przeznaczone dla usług w chmurze
- Bazy danych szeregów czasowych
- Saga zespoÅ‚u operatorów systemu: różnorodne bazy danych
Rozdział 7. Ziarnistość usług
- Elementy dezintegracji ziarnistości
- Zasięg i przeznaczenie usługi
- Ulotność kodu
- Skalowalność i przepustowość
- Odporność na błędy
- Bezpieczeństwo
- Rozszerzalność
- Elementy integracji ziarnistości
- Transakcje bazy danych
- Przepływ informacji i choreografia
- Kod wspóÅ‚użytkowany
- Relacje między danymi
- OkreÅ›lanie wÅ‚aÅ›ciwej równowagi
- Saga zespoÅ‚u operatorów systemu: ziarnistość usÅ‚ugi przydzielania zgÅ‚oszenia
- Saga zespoÅ‚u operatorów systemu: ziarnistość usÅ‚ugi rejestrowania klienta
Część II. Ponowne łączenie wszystkiego ze sobą
Rozdział 8. Wzorce ponownego wykorzystania
- Replikowanie kodu
- Kiedy używać?
- Biblioteka wspóÅ‚użytkowana
- Zarządzanie zależnościami i kontrola zmian
- Strategie numeracji wersji
- Kiedy używać?
- UsÅ‚uga wspóÅ‚użytkowana
- Ryzyko zmian
- Wydajność
- Skalowalność
- Odporność na błędy
- Kiedy używać?
- "Przyczepy" i siatka usług
- Kiedy używać?
- Saga zespoÅ‚u operatorów systemu: wspólna logika infrastruktury
- Ponowne wykorzystanie kodu: kiedy zapewnia to dodatkową wartość?
- Ponowne wykorzystanie za pośrednictwem platform
- Saga zespoÅ‚u operatorów systemu: wspólna funkcjonalność domeny
Rozdział 9. Własność danych i transakcje rozproszone
- Przypisywanie prawa własności danych
- Scenariusz pojedynczej własności
- Scenariusz ogólnej wÅ‚asnoÅ›ci
- Scenariusz wspóÅ‚wÅ‚asnoÅ›ci
- Technika podziału tabeli
- Technika domeny danych
- Technika delegowania
- Technika konsolidowania usług
- Podsumowanie kwestii własności danych
- Transakcje rozproszone
- Wzorce ostatecznej spójnoÅ›ci
- Wzorzec synchronizacji w tle
- Wzorzec oparty na żądaniach z orkiestracją
- Wzorzec oparty na zdarzeniach
- Saga zespoÅ‚u operatorów systemu: wÅ‚asność danych przy przetwarzaniu zgÅ‚oszeÅ„
Rozdział 10. Dostęp do danych rozproszonych
- Wzorzec komunikacji między usługami
- Wzorzec replikacji schematu kolumnowego
- Wzorzec buforu replikowanego
- Wzorzec domeny danych
- Saga zespoÅ‚u operatorów systemu: dostÄ™p do danych na potrzeby przydzielania zgÅ‚oszeÅ„
Rozdział 11. Zarządzanie rozproszonymi przepływami informacji
- Wariant komunikacji z orkiestracjÄ…
- Wariant komunikacji z choreografiÄ…
- Zarządzanie stanem przepływu informacji
- Kompromisy przy porównaniu orkiestracji z choreografiÄ…
- Właściciel stanu i sprzężenie
- Saga zespoÅ‚u operatorów systemu: zarzÄ…dzanie przepÅ‚ywami informacji
Rozdział 12. Sagi transakcyjne
- Wzorce sag transakcyjnych
- Wzorzec Saga Heroizmu
- Wzorzec Saga GÅ‚uchego Telefonu
- Wzorzec Saga Baśni
- Wzorzec Saga Podróży w Czasie
- Wzorzec Saga Fantastyki
- Wzorzec Saga Grozy
- Wzorzec Saga RównolegÅ‚oÅ›ci
- Wzorzec Saga Antologii
- ZarzÄ…dzanie stanem i spójność ostateczna
- Maszyny stanów sagi
- Techniki zarzÄ…dzania sagami
- Saga zespoÅ‚u operatorów systemu: transakcje atomowe i aktualizacje kompensujÄ…ce
Rozdział 13. Kontrakty
- Porównanie kontraktów Å›cisÅ‚ych i luźnych
- Kompromisy towarzyszące ścisłym i luźnym kontraktom
- Kontrakty w mikrousługach
- Sprzężenie struktur danych
- Przesadne sprzężenie w wyniku użycia sprzężenia struktur danych
- Przepustowość
- Użycie sprzężenia struktur danych do zarządzania przepływem informacji
- Saga zespoÅ‚u operatorów systemu: zarzÄ…dzanie kontraktami obsÅ‚ugi zgÅ‚oszeÅ„
Rozdział 14. Zarządzanie danymi analitycznymi
- Dotychczasowe rozwiÄ…zania
- Hurtownia danych
- Jezioro danych
- Siatka danych
- Definicja siatki danych
- Kwant produktu danych
- Siatka danych, sprzężenie i kwant architektury
- Kiedy korzystać z siatki danych?
- Saga zespoÅ‚u operatorów systemu: siatka danych
RozdziaÅ‚ 15. Tworzenie wÅ‚asnej analizy kompromisów
- OkreÅ›lanie powiÄ…zanych ze sobÄ… wymiarów
- Sprzężenie
- Analizowanie punktów sprzężenia
- Ocena kompromisów
- Techniki kompromisów
- Porównanie analizy jakoÅ›ciowej i iloÅ›ciowej
- Listy zasady MECE
- Pułapka wyjścia poza kontekst
- Modelowanie odpowiednich przypadków domenowych
- Preferowanie konkluzji nad dowód z nadmiarem informacji
- Unikanie panaceum i żarliwego zapału
- Saga zespoÅ‚u operatorów systemu: epilog
Dodatek A. OdwoÅ‚ania do terminów i pojęć
Dodatek B. OdwoÅ‚ania do rekordów decyzji dotyczÄ…cych architektury
Dodatek C. Zestawienie kompromisów
Skorowidz