AWS Elastic Beanstalk
Upload your web app's code and AWS sets up the servers to run it.
AWS Elastic Beanstalk is a service for putting a web application online without assembling the infrastructure piece by piece. You upload your code, written in something like Python, Node.js, Java, PHP, Ruby, Go or .NET, or packaged as a Docker container. Beanstalk then creates what the app needs to run: EC2 servers, a load balancer, automatic scaling when traffic grows, health checks and CloudWatch monitoring.
What makes it different from a fully hidden platform is that nothing is a black box. Everything Beanstalk creates lives in your account, built with CloudFormation behind the scenes, and you can inspect it and tweak it. Beanstalk itself costs nothing extra; you pay for the servers and other resources it creates. It also handles updates with strategies like rolling deployments, which replace servers a few at a time so the site never goes fully down.
Beanstalk has been around since 2011, and it remains a quick path for a classic web app or API with a database behind it. Many newer projects choose containers on ECS or Fargate, or serverless with Lambda, which give more control or less to manage. Knowing Beanstalk still helps, because plenty of production systems run on it.
Keep in mind
- Upload code; Beanstalk creates servers, load balancer and scaling for you.
- Supports common languages and Docker containers.
- No extra charge: you pay for the resources it creates.
- Everything it builds stays visible and editable in your account.
Go deeper
- What is AWS Elastic Beanstalk? (official docs)
- AWS Elastic Beanstalk product page
- Platform as a service on Wikipedia