Читать книгу Wzorce Cloud Native - Cornelia Davies - Страница 9

o książce

Оглавление

Kto powinien przeczytać tę książkę

Przejście „do chmury” to bardziej zmiana tego, jak projektujesz swoje aplikacje, niż tego, gdzie je uruchamiasz. Wzorce cloud-native: projektowanie oprogramowania odpornego na zmiany to twój przewodnik do tworzenia mocnych aplikacji, które radzą sobie w dynamicznym, rozproszonym, wirtualnym świecie chmury. Ta książka prezentuje myślowy model aplikacji cloud-native wraz ze wzorcami, praktykami i narzędziami wspierającymi ich tworzenie. Znajdziesz w niej realistyczne przykłady i eksperckie porady dotyczące pracy z aplikacjami, danymi, usługami, routingiem i innymi elementami.

Zasadniczo jest to książka o architekturze, zawierająca przykłady kodu wspierające zawarte w niej dyskusje związane z designem aplikacji. Zauważysz, że często odnoszę się do różnic między wzorcami, które omawiam tutaj, i do sposobu, w który mogłeś robić pewne rzeczy w przeszłości. Posiadanie doświadczenia z wzorcami poprzedniej ery czy nawet ich znajomość nie są jednak wymagane. Ponieważ omawiam nie tylko same wzorce, ale także motywacje do ich użycia i niuanse kontekstu, w którym są stosowane, powinieneś odnieść sporą korzyść niezależnie od tego, ile lat spędziłeś w pracy z oprogramowaniem.

I mimo że w książce pojawia się wiele przykładów kodu, to nie jest książka programistyczna. Nie nauczy cię, jak programować, jeśli nie znasz jeszcze podstaw. Przykłady kodu są w Javie, ale doświadczenie z dowolnym językiem programowania powinno pozwolić ci nadążać bez problemu. Posiadanie podstawowego zrozumienia interakcji między klientem a usługą, w szczególności przy użyciu protokołu HTTP, jest także pomocne, ale nie jest konieczne.

Jak książka jest zorganizowana: mapa

Książka ma 12 rozdziałów podzielonych na dwie części.

Część 1 definiuje kontekst cloud-native i prezentuje charakterystyki środowiska, w którym będziesz uruchamiać oprogramowanie:

 Rozdział 1 definiuje cloud-native i różnice względem samej chmury. Prezentuje model myślowy, wokół którego można zbudować wzorce, które pojawią się później: obiektami tego modelu są aplikacje/usługi, interakcje między usługami oraz dane.

 Rozdział 2 omawia operacje w środowisku cloud-native: wzorce i praktyki wykorzystywane do utrzymania oprogramowania cloud-native w działaniu na produkcji mimo wszystkich nieuniknionych przeszkód, które zostaną na nie narzucone.

 Rozdział 3 wprowadza platformę cloud-native, środowisko programowania i uruchamiania aplikacji, które dostarcza wsparcia, a nawet implementacji wielu wzorców zaprezentowanych w drugiej części książki. Chociaż ważne jest, byś zrozumiał wszystkie wzorce, które się pojawią, nie musisz ich wszystkich implementować.

Część 2 to dogłębna analiza samych wzorców cloud-native:

 Rozdział 4 dotyczy interakcji cloud-native, dotyka także nieco danych, wprowadzając zdarzeniową komunikację jako alternatywę dla znajomego stylu żądanie/ odpowiedź. Mimo że ten drugi jest niemal wszechobecny w większości dzisiejszego oprogramowania, podejścia zdarzeniowe często oferują znaczące korzyści w wysoko rozproszonym oprogramowaniu cloud-native i ważne jest rozważenie obu protokołów, poznając nadchodzące wzorce.

 Rozdział 5 mówi o aplikacjach/usługach cloud-native i ich relacjach z danymi. Wyjaśnia, jak aplikacje są uruchamiane jako redundantne instancje, często w znaczących ilościach, jak i dlaczego sprawiać, by były bezstanowe, i jak powiązać je ze specjalną stanową usługą.

 Rozdział 6 traktuje o aplikacjach/usługach cloud-native. Mówi o tym, jak konfiguracja aplikacji może być spójnie utrzymywana, gdy wiele, wiele instancji jest uruchamianych na przestrzeni szeroko rozproszonej infrastruktury. Omawia także to, jak konfiguracje aplikacji można poprawnie aplikować, gdy środowisko ich działania nieustannie się zmienia.

 Rozdział 7 dotyczy również aplikacji/usług cloud-native. Objaśnia cykl życia aplikacji i liczne praktyki aktualizacji bez przestojów, w tym aktualizacje stopniowe i blue/green.

 Rozdział 8 mówi o interakcjach cloud-native. Skupia się zarówno na tym, jak aplikacje mogą odnaleźć usługi, których potrzebują (wyszukiwanie usług), nawet jeśli te usługi nieustannie się przenoszą, jak i na tym, jak żądania ostatecznie trafiają do odpowiednich usług (dynamiczny routing).

 Rozdział 9 dotyczy interakcji cloud-native. Koncentruje się na klienckiej stronie interakcji. Po wyjaśnieniu konieczności redundancji interakcji i zaprezentowaniu powtórzeń (w których żądania są powtarzane, jeśli początkowo się nie powiodą), rozdział omawia zarówno problemy, które mogą wyniknąć z naiwnego zastosowania powtórzeń, jak i sposoby, by ich uniknąć.

 Rozdział 10 omawia interakcje cloud-native. Skupia się na stronie usługi. Nawet jeśli klienci inicjujący interakcje robią to odpowiedzialnie, usługa musi się nadal chronić przed nadużyciami i przeładowaniem ruchem. Ten rozdział omawia bramy PAI i bezpieczniki.

 Rozdział 11 mówi zarówno o aplikacjach, jak i interakcjach. Prezentuje sposoby na obserwowanie zachowań i wydajności rozproszonego systemu, tworzącego twoje oprogramowanie.

 Rozdział 12 dotyczy danych i zawiera znaczące implikacje dla interakcji między usługami tworzącymi twoje oprogramowanie cloud-native. Omawia wzorce wykorzystywane do zmiany tego, co kiedyś było monolityczną bazą danych, w rozproszoną sieć danych, ostatecznie powracając do zdarzeniowych wzorców, omawianych na początku drugiej części książki.

O kodzie

Książka zawiera wiele przykładów kodu źródłowego, zarówno w ponumerowanych listingach, jak i w normalnej treści książki. W obu sytuacjach kod źródłowy jest formatowany czcionką o stałej szerokości, jak ta, by oddzielić go od zwykłego tekstu. Czasami kod jest także pogrubiony, żeby zaznaczyć części, które powinny zwrócić twoją uwagę.

W wielu sytuacjach oryginalny kod źródłowy został ponownie sformatowany; dodaliśmy złamania linii i przerobiliśmy wcięcia, by uwzględnić dostępne miejsce na stronie w książce. W rzadkich sytuacjach nawet to nie wystarczyło i listingi zawierają znaczniki kontynuacji linii (). Oprócz tego komentarze z kodu źródłowego zostały usunięte z listingów, jeśli kod jest omawiany w tekście. Adnotacje przy kodzie towarzyszą wielu listingom, oznaczając ważne zagadnienia.

Kod przykładów z książki jest dostępny do pobrania ze strony Manning pod adresem https://www.manning.com/books/cloud-native-patterns oraz z GitHuba https://github.com/cdavisafc/cloudnative-abundantsunshine.

Forum dyskusyjne liveBook

Zakup Wzorców cloud-native zawiera darmowy dostęp do prywatnego forum internetowego wydawnictwa Manning Publications, gdzie możesz komentować książkę, zadawać techniczne pytania i otrzymywać pomoc od autora i innych użytkowników. Aby uzyskać dostęp do forum, przejdź pod adres https://livebook.manning.com/#!/book/cloud-native-patterns. Możesz także dowiedzieć się więcej o forach wydawnictwa Manning i zasadach postępowania pod adresem https://livebook.manning.com/#!/discussion.

Zaangażowanie ze strony wydawnictwa w pomoc dla naszych czytelników polega na zapewnieniu miejsca, gdzie może się odbywać istotny dialog między każdym z czytelników i autorką. Nie jest to zapewnienie jakiegokolwiek poziomu udziału ze strony autorki, której kontrybucje na forum pozostają dobrowolne (i bezpłatne). Sugerujemy spróbować zadać autorce kilka trudnych pytań, żeby jej zainteresowanie nie osłabło! Forum i archiwa poprzednich dyskusji będą dostępne na stronie wydawcy tak długo, jak książka pozostanie w druku.

Inne zasoby online

Możesz znaleźć Cornelię w sieci przez Twittera (@cdavisafc), Medium (https://medium.com/@cdavisafc) lub jej bloga http://corneliadavis.com.

Wzorce Cloud Native

Подняться наверх