Yo, bro! Kali ini gue bakal bongkar tuntas sih gimana sih WhatsApp bisa nge-handle miliaran pengguna tanpa nge-lag. Yuk, kita kulik bareng Anatomy Tech Stack WhatsApp 2025 Edition. Catetan, semua link gue tulis full supaya ente bisa langsung copy-paste, no ribet klik-klik!
1. Fondasi Server
- Bahasa utama: Erlang/OTP
- Kenapa Erlang? Karena dia jago banget buat concurrency & fault-tolerance. Tiap pesan itu dianggap sebagai "process" super-ringan di VM BEAM, jadi bisa hot-reload tanpa bikin downtime. Gokil kan?
- Sumber: https://blog.quastor.org/p/whatsapp-scaled-1-billion-users-50-engineers
- OS: FreeBSD (tuned kernel)
- Kernel-nya di-tweak supaya networking di-level kernel bisa handle jutaan koneksi TCP dengan socket & epoll-like event loop Erlang yang nggak blocking.
- Sumber: https://highscalability.com/how-whatsapp-grew-to-nearly-500-million-users-11000-cores-an/
- Infra fisik: Awalnya SoftLayer, sekarang udah jadi bagian dari Meta Private Cloud plus colo POP di lebih dari 200 lokasi buat ngejaga latency di bawah 50 ms.
- Cluster Erlang di-shard berdasarkan hash nomor telepon, routingnya konsisten dan state-nya di-replicate lewat "gen_server" supervision tree.
- Sumber sama seperti Erlang & FreeBSD di atas.
2. Data & Storage
- Metadata koneksi & session: Mnesia (DB bawaan Erlang)
- Ini in-memory replika yang juga punya commit-log ke disk, jadi kalau ada node down bisa fail-over dalam hitungan detik.
- Pesan terenkripsi (store-and-forward): RocksDB custom + S3-like object store di Meta
- Yang disimpen cuma payload terenkripsi aja, dan pesan yang nggak diterima bakal dihapus otomatis setelah 30 hari (Time-To-Live).
- Media (foto, video, stiker): Cold tier object storage + CDN Edge di POP Meta
- Upload media lewat HTTPS PUT, terus URL media dikirim terpisah di dalam "message node" dan tetep dienkripsi end-to-end (E2EE).
3. Protokol Pesan ⚙️
1. Signal Protocol
Implementasi lengkap sesi "Double-Ratchet", Pre-Key, dan ECDH Curve25519. Kunci "root" per device, tiap pesan pake kunci sekali pakai biar aman banget (Forward-Secrecy).
White-paper resmi: https://faq.whatsapp.com/general/security-and-privacy/end-to-end-encryption
Analisis publik: https://requestly.com/blog/how-whatsapp-ensures-chat-security-with-end-to-end-encryption/
2. Flow singkat
Client → Encrypt(payload, sessionKey) → POST /v2/messages
Server → Queue by recipientShard
Recipient → GET /sync → Decrypt(payload, sessionKey)
Semua ini dijalanin oleh proses Erlang yang independen, jadi kalau crash satu pesan nggak bakal ngaruh ke jutaan pesan lainnya.
4. Panggilan Suara & Video
- Signalling: Proprietary binary ProtoBuf di atas HTTPS yang nego codec, ukuran jendela, dan fallback relay.
- Media Path: WebRTC (SRTP + DTLS-SRTP) dengan default P2P; fallback relay pakai protokol WASP (WhatsApp STUN Protocol) yang satu-port, lebih ramah firewall dibanding TURN standar.
- URL teknis: https://atscaleconference.com/calling-relay-infrastructure-at-whatsapp-scale/
- Keamanan Tambahan 2023-2025: Ada opsi "Protect IP Address" & "Silence Unknown Callers".
- Media selalu dienkripsi SRTP end-to-end dan bisa pakai relay Meta buat sembunyiin IP kedua pihak.
- Sumber: https://engineering.fb.com/2023/11/08/security/whatsapp-calls-enhancing-security/
5. Multi-Device & Interop (DMA 2024-2025)
Arsitektur baru sejak 2021 bikin tiap device punya identitas sendiri, dengan kunci sesi di-fan-out lewat "Device Fanout Service". Jadi, ponsel bukan lagi sumber kebenaran utama.
URL teknik: https://engineering.fb.com/2021/07/14/security/whatsapp-multi-device/
Interoperabilitas EU DMA (2024+): WhatsApp buka endpoint interop gateway berbasis Signal-Protocol Bridge biar aplikasi pihak ketiga kayak Matrix, Telegram bisa tukar pesan terenkripsi.
Spec internal dirilis di sini: https://engineering.fb.com/2024/03/06/security/whatsapp-messenger-messaging-interoperability-eu/
6. Pipeline Bisnis & API
- WhatsApp Business API: REST + WebHook, containerized (Docker). Pesan bisnis lewat endpoint /v1/messages, bulk dikendalikan dengan ratelimit 250 msg/s per nomor telepon.
- Payments (India, Brasil): UPI / PIX rails + Meta Pay service mesh (gRPC). Tokenisasi kartu & PIN, plus integrasi sandbox di https://developers.facebook.com/docs/whatsapp
7. Observability & Ops
- Monitoring pake Grafana + Prometheus federated, terus alert via Opsgenie.
- Tracing pake OpenTelemetry buat gRPC & HTTP/2, sampling 0.1 %.
- Chaos Testing dengan tool internal "Fury" yang nyuntik node-kill & latency spikes ke cluster Erlang.
8. Ringkasan Alur Kerja Pesan
- User A ngetik teks → client library nge-Encrypt() pakai kunci sesi.
- Payload + metadata (jid, timestamp) di-POST ke Chat Router (Erlang).
- Router push ke Queue (Mnesia/RocksDB) di shard penerima.
- User B nge-pull lewat Signal Server, terus decrypt lokal.
- Kalo User B offline lebih dari 30 hari, pesannya otomatis dihapus (auto-TTL).
Semua langkah ini independen, event-driven, dan scalable horizontal. Makanya, cuma butuh kurang dari 200 engineer buat layani lebih dari 2 miliar pengguna harian!
9. Kenapa Stack Ini Efektif?
- Erlang kasih jutaan proses ringan & hot code swap, pas banget buat chat real-time.
- FreeBSD dengan zero-copy sendfile dan kqueue ngurangin CPU/network overhead.
- Signal Protocol jaga privasi walau data disimpen di cloud Meta.
- WebRTC + WASP bikin panggilan lancar walau kena NAT/Firewall ketat.
- Sharded Fan-out + object store CDN misahin teks sama media, bikin hemat dan kenceng.
- Interoperability Layer siap jawab regulasi DMA tanpa ngorbanin E2EE.
Dengan kombinasi gila-gilaan ini, WhatsApp tetap enteng di hape low-end tapi sanggup nangkep trafik lebih dari 140 miliar pesan per hari (estimasi 2025). Mantap, kan?
---