Browsed by
Tag: serverless

AWS Lambda i idempotentność

AWS Lambda i idempotentność

Czym jest idempotentność? Według Wikipedii to właściwość pewnych operacji, która pozwala na ich wielokrotne stosowanie bez zmiany wyniku. Jaki to ma związek z nami? W tym artykule pokażę jak mają się do siebie AWS Lambda i idempotentność. W świecie aplikacji, szczególnie tych opartych o mikrosierwisy może wystąpić sytuacja, że np. jakaś wiadomość z kolejki zostanie przekazana do serwisu więcej niż jeden raz. To na nas spoczywa odpowiedzialność, żeby takie wielokrotne wywołanie np. funkcji Lambda poprzez takie samo zdarzenie przynosiło za każdym…

Read More Read More

Jak skasować pliki w S3 przy usuwaniu stacka Cloudformation

Jak skasować pliki w S3 przy usuwaniu stacka Cloudformation

Często, a właściwie prawie zawsze, jeżeli tworzymy buckety S3 za pomocą CloudFormation, to przy usuwaniu stacka mamy problem. AWS nie usunie bucketa, jeżeli są w nim jakieś pliki. A przewaznie są, bo po coś go w końcu tworzyliśmy. Dziś pokażę, jak skasować pliki w S3 przy usuwaniu stacka Cloudformation. Jeżeli ktoś nie napotkał jeszcze tego problemu, to szybko go zobrazujemy. Utworzymy bucket za pomocą poniższego template: AWSTemplateFormatVersion: 2010-09-0920 Description: — Resources: Bucket: Type: 'AWS::S3::Bucket’ Properties: LifecycleConfiguration: Rules: – Id: expiration…

Read More Read More

EventBridge i API Destinations

EventBridge i API Destinations

Kilka dni temu AWS umożliwił dodanie do naszego EventBridge subskrybentów, do których zdarzenia będą wysyłane przez zwykły endpoint REST. EventBridge i API Destinations pozwolą na uproszczenie wielu rozwiązań. Tam gdzie do tej pory korzystaliśmy z funkcji Lambda, teraz wystarczy tylko EventBridge i odpowiedni target. Sprawdziłem jak to działa i pokażę w jaki sposób można wysłać na jakikolwiek endpoint (oczywiście także poza AWS) zdarzenia zarówno z naszych aplikacji jak i samego AWS. Zdarzenia Na potrzeby naszego rozwiązania przygotujemy dwie Event rules….

Read More Read More

Jak dobrać zasoby dla funkcji Lambda

Jak dobrać zasoby dla funkcji Lambda

Często na szkoleniach, które prowadzę, pada pytanie jak dobrać zasoby dla funkcji Lambda. To ważna kwestia. Przydzielona do funkcji pamięć, a wraz z nią, w proporcjonalnej wielkości zasoby CPU, mają wpływ na wydajność naszych aplikacji. Jednak im więcej zasobów wykorzystamy, tym większy będzie nasz rachunek w AWS. Poza ilością uruchomienia naszej funkcji płacimy przecież także za zasoby. Dokładny i aktualny cennik Lambdy znajdziesz tutaj. Korzystając z funkcji Lambda płacimy za okresy czasu w wielkości 100ms. W chwili gdy to piszę,…

Read More Read More

EKS Fargate. Serverless Kubernetes w AWS ?

EKS Fargate. Serverless Kubernetes w AWS ?

Artykuł ukazał się pierwotnie na blogu Chmurowiska. Podstawowy paradygmat serverless to: pay-per-use. Czy Fargate w połączniu z Amazon EKS spełnia ten warunek? Nie. Czego byśmy nie zrobili, płacimy za master nody. OK, jedno mamy za sobą. Kubernetes, na dziś, to nie serverless. Jeden buzzword mniej. Czym jest Kubernetes? To jest, przynajmniej dla mnie, proste pytanie. Jest orkiestratorem, który chce nam, programistom, devopsom, zapewnić wygodę uruchamiania naszych aplikacji. W chmurze, on-premises. Gdziekolwiek. Ale skupmy się na chmurach. Na AWS. Czym jest…

Read More Read More

Serverless reInvented

Serverless reInvented

re:Invent 2019 za nami. Nowości, jak zwykle, bardzo dużo. Zaczęły się zresztą pojawiać już przed samą imprezą. Dla mnie najciekawsze są sprawy związane z serverless i na nich się skupię. Oto co zwróciło moją uwagę. Lambda Provisioned Chyba każdy, kto korzysta z AWS Lambda słyszał o tak zwanych cold startach. Na ten temat przelano w internecie hektolitry atramentu. W skrócie, każde pierwsze uruchomienie funkcji trwa dłużej. Niekiedy sporo dłużej. Czas ten co raz bardziej, dzięki działaniom AWS, się skraca. Jednak…

Read More Read More

Cloudyna 2019

Cloudyna 2019

Skończyłem dziś przygotowywanie labów na nasz warsztat “Jak działa koncepcja Serverless w AWS – workshop na bazie realnego przypadku użycia”. Plan jest taki: Zaczynamy od monolitu na 3 maszynach wirtualnych. Nie martwcie się, będzie gotowy 🙂 Wrzucamy frontend i backend do kontenerów i uruchamiamy je za pomocą… „Bez serwerów”. Tu także zetkniemy się z load balancingiem w AWS. Po co nam web w kontenerze? Do S3 z nim! Mongo, Mongo… Zmieńmy na Dynamo DB. Coś za dużo tych kontenerów. To…

Read More Read More

Jak działa po zmianach funkcja Lambda wewnątrz VPC?

Jak działa po zmianach funkcja Lambda wewnątrz VPC?

Kilka tygodni temu AWS ogłosił zmiany w pracy funkcji Lambda wewnątrz VPC. Do tej pory umieszczanie funkcji Lambda wewnątrz sieci było, lekko mówiąc, słabym rozwiązaniem. Lambdy uruchamiały się długo, słabo się skalowały. Co się zmieniło w samej implementacji możesz przeczytać na blogu AWS. Ja sprawdziłem jak działa po zmianach funkcja Lambda wewnątrz VPC. Poprzednio Lambdy testowałem przy okazji konferencji 4Developers. Więcej o tym tutaj. Teraz jednak zrobiłem to trochę inaczej. Na środowisko 😉 testowe składały się: VPC (3 AZ), funkcji…

Read More Read More

W jaki sposób zapisać i odczytać dane z DynamoDB bezpośrednio przy pomocy API Gateway

W jaki sposób zapisać i odczytać dane z DynamoDB bezpośrednio przy pomocy API Gateway

Artykuł ukazał się pierwotnie na blogu Chmurowiska. Cały świat mówi i pisze o serverless. Wiele osób kojarzy ten termin z takimi usługami jak AWS Lambda lub Azure Functions. A serverless to nie tylko usługi FaaS. To „sposób myślenia” i masa innych usług, z których możemy korzystać w chmurach bez konieczności konfigurowania, zarządzania i dbania o infrastrukturę, która jest pod spodem. W tym artykule pokażę w jaki sposób zapisać i odczytać dane z DynamoDB bezpośrednio przy pomocy API Gateway. Bez pośrednictwa…

Read More Read More

Webinar – Serverless

Webinar – Serverless

Miałem ostatnio zarówno okazję, jak i przyjemność uczestniczyć w webinarze razem z Łukaszem Doroszem i Tomkiem Stachlewskim. Pokazaliśmy, że serverless to nie tylko funkcje Lambda. To całe mnóstwo innych usług, z których, jak z klocków lego, możemy budować nasze aplikacje w Amazon Web Services. Pokazałem także przykład, z życia wzięty,  zastosowania usług serverless w rozwiązaniu hybrydowym. Jeżeli ktoś nie widział, a ma ochotę zobaczyć to zapraszam tu.