Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Bagaimana untuk melaksanakan konfigurasi pengundian pengimbangan beban dalam nginx

Bagaimana untuk melaksanakan konfigurasi pengundian pengimbangan beban dalam nginx

PHPz
PHPzke hadapan
2023-05-18 17:58:212233semak imbas

1. Gambaran keseluruhan

Nginx upstream kini menyokong algoritma peruntukan:
1 Tinjauan pusingan 1:1 untuk memproses permintaan secara bergilir-gilir (lalai)
Setiap permintaan diproses satu demi satu. dalam susunan kronologi Ditugaskan kepada pelayan aplikasi yang berbeza, jika pelayan aplikasi turun, ia akan dialih keluar secara automatik, dan yang selebihnya akan terus ditinjau.
2. Berat berat (polling berwajaran)
Dengan mengkonfigurasi berat, kebarangkalian undian ditentukan Berat adalah berkadar dengan nisbah akses, dan digunakan dalam situasi di mana prestasi pelayan aplikasi tidak sekata.
3. Algoritma cincang ip_hash
Setiap permintaan diperuntukkan mengikut hasil cincang IP yang diakses, supaya setiap pelawat mempunyai akses tetap kepada pelayan aplikasi, yang boleh menyelesaikan masalah perkongsian sesi. Jika pelayan aplikasi gagal, ia perlu ditutup secara manual.
Maksud parameter:
bawah: Menunjukkan bahawa pelayan sebelumnya tidak akan mengambil bahagian dalam beban buat sementara waktu
berat: Lalai ialah 1. Semakin besar berat, semakin besar berat beban.
max_fails: Bilangan kegagalan permintaan yang dibenarkan menjadi lalai kepada 1. Apabila bilangan maksimum melebihi, ralat yang ditakrifkan oleh modul proxy_next_upstream dikembalikan
fail_timeout: Masa jeda selepas kegagalan max_fails.
Sandaran: Apabila semua mesin bukan sandaran lain tidak berfungsi atau sibuk, minta mesin sandaran.

2. Konfigurasi

Bagaimana untuk melaksanakan konfigurasi pengundian pengimbangan beban dalam nginx

Bagaimana untuk melaksanakan konfigurasi pengundian pengimbangan beban dalam nginx

1. Tinjauan pusingan (lalai)

upstream tg-t4 {
    server 10.0.0.110:8099;
    server 10.0.0.110:8098;
}
server {
    listen 8096;
    server_name www.tg-t4.com;
    location / {
    proxy_pass http://tg-t4;
    }
}

Akses keputusan: ABABABABA

2. Undian berwajaran

upstream tg-t4 {
    server 10.0.0.110:8099 weight=2;
    server 10.0.0.110:8098 weight=5;
}
server {
    listen 8096;
    server_name www.tg-t4.com;
    location / {
    proxy_pass http://tg-t4;
    }
}

Hasil akses: ABBABB ABBABB

Nota: Hasil akses yang dipengaruhi oleh berat dikira berdasarkan perkadaran minimum, bukan yang ideal Status: AABBBBB AABBBBB

3, ip_hash

upstream tg-t4 {
    server 10.0.0.110:8099;
    server 10.0.0.110:8098;
    ip_hash;
}
server {
    listen 8096;
    server_name www.tg-t4.com;
    location / {
    proxy_pass http://tg-t4;
    }
}

Hasil akses:

IP1:AAAAAA

IP2:BBBBBB

4 siap sedia

upstream tg-t4 {
    server 10.0.0.110:8099;
    server 10.0.0.110:8098 backup;
}

server {
    listen 8096;
    server_name www.tg-t4.com;
    location / {
    proxy_pass http://tg-t4;
    }
}

Hasil akses:

Akses 1: Kedua-dua perkhidmatan adalah normal. AAAAAA

Akses 2: Nyahaktifkan 10.0.0.110:8099. BBBBBB

Akses 3: Mulakan semula 10.0.0.110:8099. AAAAAA

5. Tambah pengoptimuman parameter

upstream tg-t4 {
    server 10.0.0.110:8099 weight=1 max_fails=2 fail_timeout=2;
    server 10.0.0.110:8098 weight=3 max_fails=2 fail_timeout=2 backup;
}

server {
    listen 8096;
    server_name www.tg-t4.com;
    location / {
    proxy_pass http://tg-t4;
    }
}

Hasil akses: sama seperti 4

sandaran mempunyai keutamaan tertinggi Apabila parameter ini ditetapkan, perkhidmatan yang sepadan hanya boleh Sebagai a siap sedia panas.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan konfigurasi pengundian pengimbangan beban dalam nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam