Mục lục
Serverless Architecture: Kiến trúc không máy chủ
Năm 2015, AWS Lambda ra mắt. Mình nhớ rõ lúc bạn tôi nói: "Thôi, công việc Ops của chúng ta sắp xong rồi." Nó không sai hoàn toàn, nhưng cũng không đúng hoàn toàn. Đó là dấu hiệu đầu tiên mà tôi nên cảnh báo bất cứ ai đang cân nhắc serverless.
Serverless không phải là không có máy chủ—nó là không phải quản lý máy chủ. AWS, Google, Azure vẫn sở hữu những máy chủ khổng lồ ở các data center. Nhưng với bạn, cái việc quản lý, scaling, patching các máy chủ đó? Bây giờ là bài toán của họ.
Cái được và cái mất
Giả sử bạn đang chạy một ứng dụng web thông thường trên EC2 hoặc một VPS ở IDC Việt. Mỗi tháng, bạn chi ~500K cho máy chủ dù nó chỉ xử lý 20% công suất. Khi traffic tăng (ví dụ: Flash sale Shopee), bạn phải mở cảnh báo, tay lạnh cóng kích hoạt Auto Scaling Group. Với Lambda, bạn chỉ trả tiền cho những giây CPU thực tế bạn dùng—thậm chí Lambda free tier cho 1 triệu request/tháng miễn phí.
Nhưng đây là nơi những người bán hàng không nói cho bạn nghe: cold start. Lần đầu Lambda của bạn được gọi, nó cần khởi động container, load runtime, initialize code. Với Java hay Python, cái này có thể mất 500ms-2s. Tưởng tượng bạn có ứng dụng giao hàng real-time? Con số đó có thể là sự khác biệt giữa khách hàng hài lòng và người châu báo lên Shopee.
Thứ hai, logging và debugging. Với server truyền thống, bạn SSH vào, xem log, tìm bug. Với Lambda? Bạn phụ thuộc vào CloudWatch Logs (AWS), Cloud Logging (GCP), hay tương tự. Những stack trace lẻ tẻ sẽ làm bạn phát điên. Nhiều team bị mắc kẹt ở bước này—họ lựa chọn serverless vì cost, nhưng mất gấp đôi thời gian debug.
Khi nào serverless thực sự có ý nghĩa?
Microservices xử lý sự kiện: Bạn có hệ thống thông báo. User upload hình lên, nó trigger một Lambda function xử lý: resize ảnh, lưu vào S3, cập nhật database. Mỗi function sống độc lập, scale độc lập. Chi phí? Bạn chỉ trả khi có upload.
Batch processing: Mỗi đêm, bạn cần xử lý 10 triệu record, nhưng chỉ mất 30 phút. Serverless tiết kiệm tiền vì bạn không phải giữ server chạy 24/7.
Chia sẻ bài viết


