Keuntungan Menggunakan Nginx atau HA Proxy sebagai Load Balancer

9

Di lingkungan kita, kita, baik Nginx dan HA Proxy pada kelompok berbeda. Apakah ada keuntungan menggunakan satu di atas yang lain?

Atau, apa cara terbaik untuk menyeimbangkan beban cluster server LAMP dasar?

Jason
sumber

Jawaban:

8

(Saya tidak akan pergi ke "cara terbaik untuk memuat keseimbangan", karena itu jelas situasi khusus.)

Baik HAProxy dan nginx adalah pilihan yang sangat baik untuk penyeimbang beban HTTP sumber terbuka di Unix. Pada level yang sangat tinggi, pro dan kontra yang muncul pertama kali adalah IMHO:

nginx:

  • Dapat melakukan SSL offloading (sering kali merupakan masalah besar).
  • Memiliki serangkaian modul pemrosesan konten, yaitu penulisan ulang tajuk, kompresi konten, dll.
  • Terkadang dapat menjadi 'satu-satunya HTTPd yang Anda butuhkan', menjadikan administrasi lebih mudah jika Anda tidak memerlukan HTTPd lain.
  • Lebih bisa dikembangkan dengan plugin, fx untuk merutekan traffic.

HAProxy:

  • Dapat menawarkan kinerja server tunggal yang lebih tinggi daripada nginx (terutama ketika berjalan dalam mode TCP, 10gbit / s telah ditunjukkan ).
  • IMHO lebih mudah untuk bangkit dan berjalan untuk pengaturan penyeimbangan beban HTTP dasar yang sederhana.
  • Perubahan sedikit kurang, terutama cabang stabil yang sedikit lebih tua sering berjalan untuk sementara waktu tanpa memerlukan pembaruan keamanan & stabilitas.

Namun seperti yang dikatakan, keduanya adalah pilihan yang sangat baik. Pilih yang Anda rasa paling nyaman.

Jesper M
sumber
1
Kompresi adalah nilai tambah besar untuk nginx jadi saya akhirnya pergi: haproxy + nginx memiliki failover sederhana (haproxy) dan kompresi gzip (nginx).
Alexis Lê-Quôc
2

Itu sangat tergantung pada apa yang ingin Anda lakukan.

Nginx dapat membagi beban di antara cluster, serta merutekan domain khusus ke berbagai cluster. Kinerja nginx kami memuaskan. Ini lebih seperti router beban.

Untuk haproxy saya tahu itu menanyakan status server terus-menerus, dan akan memeriksa server sebelum mengarahkan lalu lintas ke sana. Ini juga memiliki antarmuka di mana Anda dapat melihat statistik. nginx Saya tidak berpikir melakukan ini di kedua skor.

Daniel Baker
sumber
1

Kami menggunakan nginx sebagai server web, dan sangat senang dengannya. Saya tidak akan pernah kembali ke Apache. Kelemahannya adalah jika Anda bermaksud menjalankan PHP; dibutuhkan beberapa hackery-jiggery untuk membuatnya bekerja di bawah fastCGI.

Jangan lupa untuk menempatkan Varnish sebagai caching! Langkah sederhana itu memecahkan banyak masalah situs yang sedang Slashdotted / Fireballed!

gWaldo
sumber
0

Saya bukan ahli dalam hal ini, tetapi sejauh yang saya tahu HAProxy memiliki kinerja yang lebih baik dan lebih dapat dikonfigurasi dalam cara melakukan load balancing.

Sekarang saya bisa memberikan daftar perbandingan dan tolok ukur kepada Anda, tetapi saya hanya akan menautkan hasil google sebagai gantinya https://encrypted.google.com/search?q=nginx+vs+haproxy

Tidak tersedia
sumber