We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Choosing The Best AWS Service For Your Website + API - Brandon Minnick - NDC Oslo 2024
Learn how to choose the right AWS service for your website and API needs, comparing options like S3, Lambda, Amplify, and AppRunner for optimal performance and cost.
-
AWS S3 is ideal for static websites, offering effectively free hosting for up to 10,000 monthly active users with limitations on request rates (3,500 PUT/POST/DELETE and 5,500 GET requests per second)
-
AWS Lambda is the original serverless offering with cold start times around 300ms for .NET applications. While cheaper than traditional hosting, cold starts need consideration for latency-sensitive applications
-
AWS Amplify provides an all-in-one solution that can grow with your application, supporting both static and dynamic websites plus authentication via Cognito
-
AWS AppRunner simplifies deployment by watching Git repositories and automatically building/deploying on commits, handling container orchestration behind the scenes
-
Cost considerations vary significantly between services:
- LightSail offers fixed monthly costs (~$5) without auto-scaling
- Serverless options like Lambda only charge for actual usage
- Traditional VM services like EC2 charge for reserved capacity
-
Scaling approaches differ between services:
- Horizontal scaling: Creates additional instances
- Vertical scaling: Increases resources of existing instances
- Serverless: Automatic scaling managed by AWS
-
For container-based applications:
- ECS (Elastic Container Service) for simpler container deployments
- EKS (Elastic Kubernetes Service) for Kubernetes orchestration
- Fargate for serverless container execution
-
When choosing a service, consider:
- Content type (static vs dynamic)
- Required scaling capabilities
- Operating system requirements
- Container support needs
- Storage requirements
- Cost predictability vs flexibility
-
EC2 provides maximum control but requires managing OS updates and security patches, while managed services handle this automatically
-
Most services support both Windows and Linux, with SDKs available for major programming languages to simplify integration