Wydajność i optymalizacja zasobów
Wdrażanie aplikacji na AWS
Dunieski Otano
Amazon Web Services Solutions Architect
Wolno i drogo
Aplikacja zwalnia podczas skoków ruchu
W tym samym miesiącu rachunek za Lambda gwałtownie rośnie
Strojenie sprawia, że działa szybciej i taniej
Współbieżność: koszty a zimne starty
Zarezerwowana: limit i gwarancja
Ogranicza i gwarantuje pojemność funkcji
Najtańszy sposób kontroli, ale nie eliminuje zimnych startów
Dostarczona: płacisz za gotowość
Utrzymuje wstępnie rozgrzane instancje — bez zimnych startów
Kosztuje więcej; stosuj tylko tam, gdzie opóźnienie naprawdę ma znaczenie
Dobieranie pamięci za pomocą krzywej koszt–czas
Więcej pamięci = więcej CPU =
krótszy czas wykonania
Koszt = cena pamięci × czas wykonania
Najtańszy punkt jest często
pośrodku
Profiluj przy różnych rozmiarach, a potem wybierz
Buforowanie na poziomie aplikacji
Ponownie wykorzystuj pracę
w kontekście wykonania
Rozgrzana Lambda zachowuje zmienne globalne między wywołaniami
Buforuj konfigurację, klientów i często odpytywane dane
ElastiCache
do wspólnej pamięci podręcznej między instancjami
Buforowanie brzegowe w CloudFront
CloudFront
: buforuje odpowiedzi w lokalizacjach brzegowych
Obsługuje ponowne żądania bez obciążania backendu
Klucze pamięci podręcznej mogą obejmować
nagłówki, ciągi zapytań i ciasteczka
Treści statyczne i buforowalne skalują się bez dodatkowych kosztów
Wybór odpowiedniej warstwy pamięci podręcznej
Brzeg (CloudFront)
: treści statyczne, powszechnie udostępniane
Aplikacja (pamięć operacyjna)
: często używane obiekty per instancja
Dane (ElastiCache/DAX)
: współdzielone, częste odczyty
Łącz warstwy — każda ogranicza inne koszty
Optymalizacja — podsumowanie
Dobierz pamięć na podstawie
krzywej koszt–czas
Stosuj dostarczoną współbieżność tylko tam, gdzie opóźnienie ma znaczenie
Buforuj na poziomie
brzegu, aplikacji i danych
Mierz, zmieniaj jedną rzecz, mierz ponownie
Czas na praktykę!
Wdrażanie aplikacji na AWS
Preparing Video For Download...