AWS Lambda là gì?
AWS Lambda là dịch vụ serverless cho phép chạy code mà không cần quản lý server.
Bạn chỉ cần:
-
Viết code
-
Deploy
-
AWS tự lo server, scaling, availability
Lambda hoạt động như thế nào?
Lambda chạy code dựa trên event.
Event có thể đến từ:
-
API Gateway (HTTP request)
-
S3 (upload file)
-
DynamoDB (data change)
-
CloudWatch (cron / schedule)
-
SQS / SNS
3. Đặc điểm chính
-
Auto scale (0 → hàng nghìn request)
-
Chỉ trả tiền khi function chạy
-
Không cần quản lý OS, server
-
Thời gian chạy tối đa: 15 phút
4. Runtime hỗ trợ
-
Node.js
-
Python
-
Java
-
Go
-
.NET
-
Custom runtime (Docker)
5. Lambda dùng để làm gì?
Use case phổ biến
-
Backend API nhỏ
-
Webhook handler
-
Xử lý ảnh / file khi upload S3
-
Cron job (schedule task)
-
Event-driven microservice
Ví dụ Lambda (Node.js)
exports.handler =async (event) => {
return {
statusCode:200,
body:JSON.stringify({message:"Hello from Lambda" }),
};
}
Lambda vs EC2
| Tiêu chí | Lambda | EC2 |
| Quản lý server | ❌ Không | ✅ Có |
| Scaling | Auto | Manual / Auto |
| Thời gian chạy | ≤ 15 phút | Không giới hạn |
| Chi phí | Theo request | Theo thời gian chạy |
| Phù hợp | Event / API nhỏ | App lớn, long-running |
Hạn chế của Lambda
-
Cold start (lần chạy đầu)
-
Không phù hợp task lâu
-
Debug khó hơn server truyền thống
-
Phụ thuộc event-based design
10. Best Practices
-
Giữ function nhỏ, single-responsibility
-
Tách business logic khỏi handler
-
Dùng environment variables
-
Kết hợp CloudWatch Logs
-
Dùng IAM role tối thiểu quyền
11. Summary
AWS Lambda = Chạy code không cần server
-
Phù hợp hệ thống event-driven
-
Scale mạnh, cost thấp
-
Lý tưởng cho microservice & automation