Serverless computing mění paradigma — místo serverů deployujete funkce. Serverless Framework zjednodušuje práci s AWS Lambda, Azure Functions a Google Cloud Functions.
No server is easier to manage than no server¶
Serverless (Function-as-a-Service) je logický další krok po kontejnerech. Místo správy serverů, clusterů nebo kontejnerů deployujete jednotlivé funkce. Cloud provider se stará o škálování, dostupnost a patching.
AWS Lambda, spuštěná v 2014, je nejzralejší FaaS platforma. Azure Functions a Google Cloud Functions následují. Serverless Framework je open-source nástroj, který abstrahuje rozdíly mezi providery.
Serverless Framework v praxi¶
Definice funkce v serverless.yml:
service: user-api
provider:
name: aws
runtime: nodejs4.3
region: eu-west-1
functions:
getUser:
handler: handlers/user.get
events:
- http:
path: users/{id}
method: get
createUser:
handler: handlers/user.create
events:
- http:
path: users
method: post
serverless deploy vytvoří Lambda funkce, API Gateway endpointy, IAM role — vše automaticky.
Kdy serverless dává smysl¶
Ideální use cases pro serverless:
- API backends** — REST/GraphQL API s proměnlivým traffic
- Event processing** — zpracování S3 uploadů, SQS zpráv, DynamoDB streamů
- Scheduled tasks** — cron joby bez serveru
- Webhooks** — příjem a zpracování webhooků
Méně vhodné pro:
- Dlouho běžící procesy (Lambda limit 5 minut)
- Stateful aplikace vyžadující persistent connections
- Workloady s konstantní vysokou zátěží (serverless je dražší)
Cold starts a vendor lock-in¶
Dva hlavní problémy serverless:
Cold starts — první volání po neaktivitě trvá déle (100ms-3s podle runtime). Pro latency-sensitive aplikace je to problém. Workaroundy: keep-warm scheduling, provisioned concurrency.
Vendor lock-in — Lambda-specific features (DynamoDB triggers, Step Functions) vás váží na AWS. Serverless Framework zmírňuje lock-in na úrovni deploymentu, ale aplikační kód stále závisí na provider-specific SDK.
Závěr: budoucnost je event-driven¶
Serverless není náhrada za všechny workloady, ale pro event-driven a API scénáře je ekonomicky a operačně výhodnější. Serverless Framework je nejlepší způsob, jak začít. Platíte jen za skutečné využití — žádné idle servery.