AWS Lambda
"AWS Lambda lets you run code without provisioning or managing servers. You pay only for the compute time you consume."
Benefits
- Serverless
- Continuous Scaling
- Subsecond Metering
- Consistent Performance
Serverless Components
- Lambda - functions as a service (compute)
- API Gateway - HTTP endpoints as a service (connectivity)
- DynamoDB - Managed NoSQL (storage)
- S3 - Managed object store (storage)
- Congito - User management and authentication (security)
- Certificate Manager - free, automatic, SSL certs (security)
Use Case
- ETL jobs
- APIs (with API gateway)
- Mobile backends
- Infrastructure automation
- Data validation
- Security remediation
Under the hood
- Containers
- Shared EC2 instances
- Resource isolation
- 100ms execution measurement
- 15 minute max
- AWS SDK built-in
Triggers
- API Gateway
- AppSync
- Schedules
- AWS IoT
- Alexa Skills Kit
- Alex Smart Home
- Application Load Balancer
- Cloudfront
- CloudWatch Events
- CloudTrail Logs
- CodeCommit
- Cognito Sync Trigger
- DynamoDB streams
- Kenesis streams
- S3
- SNS topics
- SQS
- SDK innovation
There's also a bunch of partner event sources (via Amazon EventBridge) that can trigger Lambda functions. E.g. SugarCRM, Segment, Datadog, Zendesk, etc.
Supported Languages
- Node.js
- Go
- Python
- Ruby
- Java
- C#
- Powershell