


- Versioning and Aliases — safe deployments and instant rollbacks
- Lambda supports immutable versions and mutable aliases. Publish a version (for example
v1,v2) and point an alias (for examplecheckout-prod) at a version. - Aliases support traffic shifting so you can perform canary or blue/green deployments. Example: keep 90% of traffic on
v1and route 10% tov2to validate behavior in production. Monitor error rates and latency, then switch to 100% when confident. If problems occur, point the alias back tov1for an immediate rollback.

- Decoupling with queues (SQS) and asynchronous processing
- Decoupling user-facing requests from background work improves responsiveness and resilience. Example flow: a seller uploads a product image to S3; S3 can publish an event to an SQS queue (or EventBridge/SNS), and a Lambda function consumes messages from SQS to process the image (resize, watermark, store optimized version). The upload returns quickly; image processing is handled asynchronously.

Asynchronous vs SQS semantics differ: asynchronous Lambda retries are handled by the Lambda service (use DLQ/destinations), while SQS retries are controlled by SQS visibility timeouts and the queue’s redrive policy.
- Automatic retries and Dead-Letter Queues (DLQs)
- Built-in retry behavior gives basic fault tolerance. For more robust handling, combine retries with DLQs and notifications (SNS) so operators can be alerted to examine and reprocess failures. Use asynchronous invocation destinations for programmable failure routing.
- Cold starts, warm starts, and concurrency
- Execution phases: container initialization (cold start), runtime initialization, and handler invocation. Cold starts add latency because a new execution environment must be provisioned and code loaded.
- Lambda scales by provisioning execution environments; N concurrent requests may require up to N environments (subject to account concurrency limits).
- The regional default concurrent execution limit is typically 1,000 (check current AWS quotas). If you require higher concurrency, request a quota increase.
- Provisioned Concurrency keeps a pool of initialized execution environments ready to handle traffic and reduces cold-start latency. Note that this incurs additional cost.
- Reserved Concurrency sets a maximum concurrency for a function or reserves part of the account concurrency for it, useful for limiting noisy neighbors or protecting downstream resources.

- Mitigating cold-start latency
- Use Provisioned Concurrency for latency-sensitive workloads and schedule capacity ahead of known traffic spikes.
- Warm-up techniques (periodic invocations) are sometimes used, but Provisioned Concurrency is the supported, reliable method to guarantee warm environments.


Provisioned Concurrency reduces cold starts but increases cost because you pay for pre-initialized capacity. Use it selectively for critical, latency-sensitive functions and schedule scaling to match traffic patterns.
- VPC access and Elastic Network Interfaces (ENIs)
- Lambda can run inside your VPC to access resources such as RDS, ElastiCache, or internal services. When configured for a VPC, Lambda creates ENIs in the specified subnets so the function can reach VPC resources.
- For high availability and better scaling, configure multiple private subnets across multiple Availability Zones (one or more subnets per AZ). This allows Lambda to create ENIs in each AZ and improves resilience.
- AWS manages ENIs for Lambda. Historically, ENI creation added cold-start overhead; platform improvements have reduced this, but VPC configuration can still affect cold-start times and scaling behavior.

- Regional availability and multi-AZ behavior
- Lambda is a regional service and AWS operates it across multiple Availability Zones for durability and availability. You do not need to place functions in specific AZs: Lambda runs across the region and uses multiple AZs automatically.
- If your function uses VPC subnets, provide subnets in multiple AZs so Lambda can create ENIs across them and maintain network reachability and availability.

- Use versioning and aliases for safe, incremental deployments and instant rollbacks.
- Decouple user-facing operations from background processing using SQS, SNS, or EventBridge to improve responsiveness and fault isolation.
- Configure retries, DLQs, and notification workflows to ensure failures are captured and surfaced to operators.
- Understand cold starts vs. warm starts; use Provisioned Concurrency for predictable low-latency responses.
- When running Lambdas in a VPC, configure subnets across multiple AZs to improve availability and allow network access to your resources.
- Monitor Lambda metrics (invocations, errors, duration, throttles, concurrent executions) in CloudWatch and create alarms for operational thresholds.
Exam tip: architectures that show S3 → SQS → Lambda (async processing), versioned Lambda aliases with traffic-shifting (canary rollouts), or Provisioned Concurrency for latency-sensitive workloads are common scenarios — understand the retry and DLQ semantics for each.
- AWS Lambda Developer Guide
- Amazon SQS Developer Guide
- API Gateway Developer Guide
- AWS Provisioned Concurrency
- AWS Lambda Quotas and Limits