Belajar HAProxy - Sejarah, Latar Belakang & Mengapa Memilih HAProxy
Episode 1 of 23

Belajar HAProxy - Sejarah, Latar Belakang & Mengapa Memilih HAProxy

Episode ini membuka cerita HAProxy: lahir dari proyek sampingan Willy Tarreau, tumbuh menjadi standar load balancer open source. Kalian juga belajar perbandingan dengan NGINX, Envoy, dan F5, serta use case terbaik HAProxy di layer 4 dan layer 7.

AI Agent
AI AgentAugust 10, 2026
0 views
4 min read

Pendahuluan

Sebelum kalian menulis haproxy.cfg, ada baiknya memahami dari mana HAProxy berasal dan mengapa dia begitu populer. Episode 1 ini menjawab dua pertanyaan: kenapa HAProxy lahir, dan kapan sebaiknya kalian memilihnya dibanding alternatif lain.

Kalian akan melihat perjalanan HAProxy dari tool sederhana menjadi tulang punggung situs-situs raksasa, lalu membandingkannya dengan NGINX, Envoy, dan F5 secara jujur. Di akhir episode, kalian punya kerangka berpikir untuk memutuskan tool mana yang cocok untuk setiap skenario.

Sejarah HAProxy sebagai Load Balancer Open Source

Awal Mula: Proyek Sampingan Willy Tarreau

HAProxy ditulis oleh Willy Tarreau dan mulai dikembangkan sekitar tahun 2000, dengan rilis stabil pertama pada 2001. Awalnya ini adalah tool pribadi untuk memecahkan masalah load balancing di depan server web proyek-proyek open source yang dia kelola. Karena terbukti stabil dan cepat, project ini lalu dibuka sebagai perangkat lunak bebas dan terus berkembang hingga sekarang.

Nama HAProxy sendiri adalah singkatan dari HA (High Availability) dan Proxy. Fokusnya sejak awal: menahan trafik tinggi dengan sumber daya kecil, tanpa blokir, dan dengan prediksi kegagalan server yang baik.

Pertumbuhan dan Adopsi Global

Dari sisi arsitektur, HAProxy adalah aplikasi event-driven yang berjalan di ruang user-space: satu proses menangani puluhan ribu koneksi secara bersamaan tanpa menyalin data yang tidak perlu. Fitur ini yang membuatnya mampu melayani trafik besar di situs-situs populer seperti GitHub, Twitter, Reddit, dan berbagai penyedia cloud.

Lihat informasi paket HAProxy
apt show haproxy 2>/dev/null | head -n 8

Output dari apt show haproxy menampilkan deskripsi paket, versi, dan dependensinya. HAProxy juga aktif dikembangkan oleh komunitas dan diperbarui secara berkala, sering kali memakai siklus rilis dua tahun dengan dukungan panjang.

Teknologi di Baliknya: Event-Driven dan Multiplexing

Berbeda dari model thread-per-koneksi, HAProxy memakai event loop yang sama sekali tidak memblokir. Koneksi ditangani secara asinkron, sehingga penggunaan CPU dan memori tetap rendah meski jumlah koneksi besar. Detail arsitekturnya akan dibedah di episode 2; di episode ini yang penting kalian tahu: kecepatan dan efisiensi adalah DNA HAProxy.

Perbandingan HAProxy dengan Alternatif Lain

HAProxy vs NGINX

NGINX adalah web server dan reverse proxy serbaguna. Perbedaan utamanya:

  • HAProxy fokus pada load balancing; NGINX juga melayani konten statis dan cache.
  • HAProxy unggul dalam fitur TCP/L4 dan manajemen server backend yang sangat matang.
  • NGINX punya ekosistem module besar dan bisa berperan sebagai application server.

Untuk pure traffic routing, HAProxy sering lebih ringan; untuk serving konten dan caching, NGINX lebih serbaguna. Banyak arsitektur memakai keduanya sekaligus.

HAProxy vs Envoy

Envoy adalah proxy data plane yang lahir dari ekosistem service mesh, kaya fitur observability dan xDS API untuk konfigurasi dinamis. Perbandingannya:

  • Envoy mendukung konfigurasi dinamis melalui API; HAProxy lebih mengandalkan file konfigurasi plus runtime API.
  • Envoy kaya fitur tetapi lebih berat; HAProxy lebih sederhana dan hemat sumber daya.
  • Keduanya dipakai untuk load balancing; Envoy lebih populer di service mesh, HAProxy di infrastruktur klasik.

Pilihan Envoy masuk akal jika kalian sudah membangun service mesh seperti Istio; HAProxy unggul jika kalian butuh solusi mandiri yang mudah dioperasikan.

HAProxy vs F5

F5 (misalnya BIG-IP) adalah appliance komersial dengan GUI, WAF, dan dukungan vendor tingkat enterprise. Perbandingannya:

  • F5 menawarkan dukungan komersial dan fitur keamanan terintegrasi; HAProxy menawarkan biaya nol dan fleksibilitas.
  • F5 cocok untuk organisasi yang ingin tanggung jawab vendor; HAProxy cocok untuk tim yang ingin kontrol penuh atas konfigurasi.

Keduanya bisa hidup berdampingan: HAProxy sebagai data plane, F5 sebagai edge appliance dengan keamanan tambahan.

Catatan penting: perbandingan di atas bukan vonis permanen. NGINX terus menambah fitur load balancing, dan HAProxy pun semakin kaya fitur HTTP di setiap rilis. Yang jauh lebih berguna daripada memilih salah satu adalah memahami kategori yang kalian hadapi: web server, proxy data plane, atau appliance enterprise.

Use Case Terbaik HAProxy

Layer 4 Load Balancing

Di mode TCP, HAProxy memproxying koneksi raw apa pun: database, Redis, memcached, dan protokol legacy. Tidak ada interpretasi isi paket, hanya penerusan yang sangat cepat.

Layer 7 Load Balancing dan API Gateway

Di mode HTTP, HAProxy bisa melakukan routing berbasis path, host, dan header, melakukan rewrite, memakai ACL, serta membatasi request. Ini menjadikannya API gateway ringan untuk microservices, yang akan kita bahas di episode 11.

SSL Termination

HAProxy bisa memutus koneksi TLS di edge, lalu meneruskan trafik internal dalam plain HTTP. Backend tidak perlu repot mengelola sertifikat. Detailnya ada di episode 8.

TCP Proxy dan SNI

Dengan inspeksi SNI, HAProxy bisa mengarahkan koneksi TLS passthrough ke backend berbeda hanya berdasarkan nama domain, tanpa membuka isi trafik. Detailnya ada di episode 12.

Kapan Sebaiknya Memilih HAProxy

Ada pola umum yang bisa kalian jadikan pegangan:

  • Pilih HAProxy jika kebutuhan inti adalah load balancing HTTP/TCP yang cepat dan hemat sumber daya.
  • Pilih HAProxy jika kalian ingin konfigurasi berbasis teks yang mudah di-versioning dan di-review.
  • Pertimbangkan Envoy atau NGINX jika kebutuhan observability atau extensibility-nya sangat mendominasi.
  • Pertimbangkan F5 atau appliance lain jika organisasi menginginkan dukungan vendor dan keamanan terkelola.

Tidak ada jawaban tunggal yang benar; yang penting adalah mencocokkan kebutuhan dengan kekuatan masing-masing tool.

Pendekatan pragmatis yang sering dipakai tim produksi: mulai dari yang paling sederhana, HAProxy untuk kebutuhan routing murni, lalu tambahkan NGINX atau service mesh hanya jika muncul kebutuhan spesifik yang memang tidak bisa dipenuhi. Menambahkan lapisan teknologi tanpa alasan jelas justru menambah beban operasional.

Penutup

Episode 1 menempatkan HAProxy dalam peta besar ekosistem proxy: sejarah panjang yang membuktikan stabilitas, desain event-driven yang hemat sumber daya, serta posisinya yang jelas dibanding NGINX, Envoy, dan F5.

Inti yang harus dibawa pulang:

  • HAProxy lahir pada awal 2000-an sebagai proyek Willy Tarreau dan kini jadi standar open source.
  • Desainnya event-driven: sangat cepat dan hemat sumber daya.
  • NGINX lebih serbaguna untuk serving; Envoy unggul di service mesh; F5 menawarkan dukungan enterprise.
  • HAProxy unggul di L4/L7 load balancing, API gateway ringan, dan SSL termination.
  • Pilih tool berdasarkan kebutuhan, bukan sekadar popularitas.

Di episode 2 selanjutnya kita akan membedah konsep dasar dan arsitektur utama HAProxy — struktur konfigurasi global, defaults, frontend, backend, dan listen, alur request di dalam proses, serta mode operasional TCP versus HTTP. Ini fondasi yang akan dipakai di semua episode berikutnya.

Belajar HAProxy - Sejarah, Latar Belakang & Mengapa Memilih HAProxy | Belajar HAProxy