What is AWS Serverless architecture?

Answer

Serverless architecture on AWS means building applications without provisioning or managing servers — you focus on code, AWS manages infrastructure. You pay only when code runs, not for idle time. Core serverless services: Lambda (compute), API Gateway (HTTP frontend), DynamoDB (database), S3 (storage), EventBridge (event bus), SQS/SNS (messaging), Step Functions (orchestration), Cognito (auth), AppSync (GraphQL). Common serverless patterns: (1) Web API: API Gateway → Lambda → DynamoDB. Scales from 0 to millions with no changes; (2) File processing: S3 upload event → Lambda trigger → process (resize image, extract metadata, validate) → store result; (3) Event-driven: EventBridge rule → Lambda (e.g., new order event → send confirmation email, update inventory, notify warehouse); (4) Scheduled tasks: EventBridge cron → Lambda (generate reports, cleanup, sync data). AWS Step Functions: orchestrate multiple Lambda functions in a workflow. States: Task, Wait, Choice (branching), Parallel, Map (iterate), Pass. Handles retries, error handling, timeouts. Express vs Standard (different pricing/durability). SAM (Serverless Application Model): CloudFormation extension for serverless — simpler template syntax for Lambda, API Gateway, DynamoDB. sam local invoke for local testing. Benefits: no server management, automatic scaling, pay-per-use, built-in availability. Challenges: cold starts (Lambda), vendor lock-in, local development complexity, debugging distributed functions, 15-minute Lambda timeout limit.