Hôm nay tôi có một case study cực kỳ kinh điển mà dân công nghệ nào cũng nên biết: câu chuyện WhatsApp đã scale lên 1 tỷ người dùng vào năm 2016 với một team engineering chỉ vỏn vẹn 50 người.
Nghe mà tưởng xạo đúng không? Chúng ta hãy cùng đi sâu vào văn hóa kỹ thuật và tech stack đã làm nên màn bá đạo này.

WhatsApp đã gánh một mức tải khủng khiếp như thế nào?
Vào năm 2016, khi đạt mốc 1 tỷ người dùng, đây là những con số thống kê hàng ngày của WhatsApp:
- 42 tỷ tin nhắn được gửi đi.
- 1.6 tỷ hình ảnh được chia sẻ.
- 250 triệu video được gửi.
Và tất cả được vận hành bởi một team chỉ có 50 kỹ sư. Bí mật của họ nằm ở đâu?
Engineering Culture (Văn Hóa Kỹ Thuật)
Triết lý của họ gói gọn trong 3 nguyên tắc chính:
-
Keep Things Small (Giữ Mọi Thứ Nhỏ Gọn)
- Team nhỏ: Họ cố tình giữ team engineering bé tí, chỉ khoảng 50 người. Mỗi team con cũng chỉ có từ 1-3 kỹ sư và được trao quyền tự chủ rất cao.
- Server ít: Thay vì dàn trải ra hàng ngàn server yếu, họ thích dùng ít server hơn nhưng mỗi con phải được scale theo chiều dọc, tức là “trâu bò” nhất có thể. Ít server hơn đồng nghĩa với ít thứ có thể hỏng hóc hơn, dễ quản lý hơn.
- Hệ thống gọn: Họ giới hạn tối đa số lượng hệ thống và component chạy trên production. Điều này có nghĩa là ít hệ thống phải phát triển, deploy và hỗ trợ hơn.
-
Keep Things Simple (Giữ Mọi Thứ Đơn Giản)
- Họ tuân theo tôn chỉ “Just Enough Engineering” – tức là làm vừa đủ, không thừa thãi. Họ tránh đầu tư quá mức vào các hệ thống phức tạp.
- Thay vào đó, họ chỉ xây dựng vừa đủ để đảm bảo tính scalability, security và reliability.
- Khi đưa ra lựa chọn kỹ thuật, câu hỏi quan trọng luôn là “đâu là cách tiếp cận đơn giản nhất?”. Họ cũng tránh automation trừ khi nó thực sự cần thiết.
-
Have a Single Minded Focus on the Mission (Tập Trung Tuyệt Đối vào Sứ Mệnh)
- Thiết kế sản phẩm của WhatsApp cực kỳ tập trung. Họ chỉ làm một việc: cung cấp một ứng dụng giao tiếp cốt lõi với UI tuyệt vời.
- Họ tránh xa các tính năng “màu mè, hoa lá cành” không phục vụ trực tiếp cho mục đích giao tiếp cốt lõi. Sản phẩm đơn giản hơn giúp việc bảo trì và scale trở nên dễ dàng hơn rất nhiều.
Tech Stack
Tech stack của họ xoay quanh 3 thành phần cốt lõi: Erlang, FreeBSD và SoftLayer.
-
Erlang Đây là ngôn ngữ được chọn cho toàn bộ hệ thống backend của WhatsApp.
- Concurrency đỉnh cao: Erlang được thiết kế ngay từ đầu cho các hệ thống đồng thời (concurrency), và khả năng chịu lỗi (fault tolerance) là một tính năng hạng nhất của ngôn ngữ này.
- Năng suất cao: Erlang là một ngôn ngữ functional, code rất ngắn gọn và dễ làm được nhiều việc chỉ với vài dòng code.
- OTP: Đây là một bộ sưu tập middleware, thư viện và công cụ mã nguồn mở cho Erlang. WhatsApp tuy hạn chế dùng dependency nhưng có sử dụng Mnesia, một database phân tán thuộc OTP.
- Hotswap code: Đây là tính năng “bá đạo” nhất. Bạn có thể nạp code mới vào một ứng dụng đang chạy mà không cần restart. Điều này giúp họ tung ra các bản vá lỗi cực nhanh và đạt được uptime cho dịch vụ cực kỳ dài.
-
FreeBSD Đây là hệ điều hành mà WhatsApp sử dụng cho server của họ. Quyết định này đến từ kinh nghiệm của các nhà sáng lập khi họ còn làm ở Yahoo!, nơi FreeBSD được sử dụng rộng rãi. Đơn giản là họ đã quá quen thuộc và tin tưởng nó.
-
SoftLayer Đây là nền tảng hosting mà WhatsApp đã sử dụng. Họ chọn SoftLayer vì 2 lý do chính:
- Có sẵn FreeBSD như một lựa chọn hàng đầu.
- Có thể đặt hàng và vận hành các server vật lý.
Tuy nhiên, sau khi về với Facebook và SoftLayer bị IBM mua lại, WhatsApp đã chuyển toàn bộ hạ tầng của mình sang dùng của Facebook vào năm 2017.