|
|
Diposting pada 14/06/2020 11.50.26
|
|
|
|

Saya telah menggunakan penyeimbangan beban Alibaba Cloud selama lebih dari 6 tahun, dan saya telah menggunakan nginx selama lebih dari 6 tahun.
Penyeimbangan beban dibangun di atas struktur jaringan yang ada dan menyediakan cara yang murah, efektif, dan transparan untuk menskalakan peralatan jaringan dan bandwidth server, meningkatkan throughput, meningkatkan kemampuan pemrosesan data jaringan, serta meningkatkan fleksibilitas dan ketersediaan jaringan. Keseimbangan beban berarti didistribusikan ke beberapa unit operasi, seperti server web, server FTP, server aplikasi penting perusahaan, dan server penting lainnya yang penting, sehingga dapat bersama-sama menyelesaikan tugas kerja. Sederhananya, ia mendistribusikan beberapa permintaan ke server yang berbeda di backend untuk mengurangi tekanan pada setiap server dan mencapai ketersediaan tinggi, bahkan jika satu server menutup telepon, itu tidak berdampak.
Pertama-tama
Saya menginstal node.js secara asli dan menginstal http-server untuk meniru dua wadah web. (Gunakan IIS, atau terapkan protokol HTTP dengan kode Anda sendiri)
Setelah menginstal node.js, jalankan perintah berikut:
Mensimulasikan dua situs backend
Saya membuat dua folder baru, site1 dan site2, di bawah direktori E:\wwwroot, masing-masing dengan file index.html di dalamnya.
Isinya adalah: indeks 1 by:itsvse.com dan indeks 2 by:itsvse.com
Kemudian, dengarkan dua port HTTP dengan perintah berikut untuk membuka kedua situs.
Coba akses kedua stasiun secara terpisah:Login hyperlink terlihat. Login hyperlink terlihat.Renderingnya adalah sebagai berikut:
Konfigurasi penyeimbangan beban NGINX
Unduh nginx versi Windows di alamat berikut:Login hyperlink terlihat.
Setelah diunduh, ekstrak ke direktori E:\wwwroot\nginx-1.18.0. Ubah file E:\wwwroot\nginx-1.18.0\conf\nginx.conf sebagai berikut:
Mulai program nginx dengan perintah berikut:
nginx -s hentikan shutdown cepat nginx -s berhenti dari shutdown yang anggun nginx -s memuat ulang konfigurasi yang berubah, memulai proses pekerja baru dengan konfigurasi baru, mematikan proses pekerja lama dengan anggun nginx -s buka kembali file log pembukaan kembali Mengakses situs penyeimbangan beban nginx melalui browser:Login hyperlink terlihat.
Kami menyegarkan dan meninjau kembali berkali-kali, dan menemukan bahwa konten yang dikembalikan berbeda setiap kali, dan Anda dapat melihat bahwa nginx mendistribusikan permintaan yang berbeda ke layanan http yang berbeda di backend,Mencoba menghentikan situs site1, kita dapat melihat bahwa itu tidak memengaruhi akses normal kita, dan nginx meneruskan semua permintaan ke situs site2。
Status konfigurasi penyeimbangan beban Nginx
| negara | Ikhtisar | | turun | Server saat ini tidak berpartisipasi dalam penyeimbangan beban untuk saat ini | | Cadangan | Server cadangan yang dicadangkan diaktifkan saat semua server lain digantung | | max_fails | Jumlah permintaan yang gagal diizinkan, jika jumlah permintaan yang gagal melebihi batas, matikan server dari kumpulan layanan virtual setelah waktu fail_timeout | | fail_timeout | Setelah kegagalan max_fails, layanan menjeda waktu, max_fails nilai fail_timeout harus diatur | | max_conns | Batasi jumlah maksimum koneksi untuk konfigurasi perangkat keras server yang berbeda |
Kebijakan penjadwalan penyeimbangan beban Nginx
| Algoritma penjadwalan | Ikhtisar | | Pollot | Polling satu per satu, metode default | | berat | Polling tertimbang, semakin tinggi bobotnya, semakin tinggi peluang distribusi | | ip_hash | Alokasi hasil hash dari IP yang mengakses akan menyebabkan permintaan dari alamat IP yang sama untuk mengakses server latar belakang tetap | | url_hash | Tetapkan sesuai dengan hasil hash dari URL yang dikunjungi | | least_conn | Jumlah minimum tautan, server dengan tautan yang lebih sedikit akan ditetapkan | | nilai kunci hash | kunci kustom hash |
Untuk informasi selengkapnya tentang konfigurasi nginx, lihat:Login hyperlink terlihat.
|
Mantan:Pemisahan dan penghapusan log NginxDepan:Konsep dan perbedaan antara ITO, BPO, KPO, dan ketiganya
|