Rumah  >  Soal Jawab  >  teks badan

Pengimbangan beban - beberapa soalan mengenai proksi terbalik nginx?

Saya menggunakan dua pelayan untuk mengkonfigurasi proksi terbalik.
Pelayan A memajukan semua permintaan ke kumpulan pelayan ujian melalui konfigurasi berikut (walaupun hanya terdapat 1 dalam kumpulan)

listen 80;

root   /home/www;

......

upstream test {
    server 123.45.567.89:80 weight=1;  // 服务器B
}

location / {
    proxy_pass http://test;
}

Mengakses pelayan A melalui penyemak imbas mengembalikan kandungan dalam pelayan B.
Inilah persoalannya:
1 Pelayan B (pelayan proksi terbalik) nampaknya tidak memerlukan sebarang konfigurasi?
2. Selagi pelayan proksi tidak mempunyai sebarang tetapan penyekatan, bolehkah saya menyertai huluan untuk menjadi pelayan proksi terbalik saya?
3. Apabila menggunakan proksi terbalik untuk pengimbangan beban, adakah projek pada pelayan B perlu konsisten dengan projek pada pelayan A?

给我你的怀抱给我你的怀抱2714 hari yang lalu563

membalas semua(2)saya akan balas

  • 怪我咯

    怪我咯2017-05-16 17:10:55

    Poin 1: Secara ringkasnya, objek proksi tidak memerlukan sebarang konfigurasi, tetapi perlu diperhatikan bahawa jika anda ingin memproses IP sumber permintaan pada B, maka anda perlu melakukan beberapa konfigurasi pada nginx pada A, dan menukar IP sumber Letakkannya dalam pengepala permintaan, sebagai contoh,

    Point 2: Saya tidak pernah menggunakan upstream, selalunya saya menggunakan proxy_pass

    location / {
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header Host $http_host;
          proxy_set_header X-NginX-Proxy true;
    
          proxy_pass http://127.0.0.1:6101/;
          proxy_redirect off;
          proxy_buffering off;
        }

    Poin 3: Secara umumnya, ya.

    balas
    0
  • 高洛峰

    高洛峰2017-05-16 17:10:55

    1 Pelayan proksi B tidak memerlukan sebarang tetapan
    2 Menambah berbilang kumpulan pelayan ke huluan ialah konfigurasi pengimbangan beban yang dipanggil. Kemudian konfigurasikan proxy_pass
    3 Pelayan seimbang beban secara teorinya berkongsi data dan mempunyai perniagaan yang sama, tetapi diedarkan dan digunakan pada mesin yang berbeza untuk mengurangkan tekanan pelayan. (Pengarang boleh memulakan berbilang perkhidmatan dengan perniagaan yang sama pada port berbeza pada pelayan yang sama, dan mengkonfigurasi pengimbangan beban, mengesahkannya lakukan sendiri!)

    Pada masa ini terdapat beberapa kaedah strategi pengimbangan beban

    • Pengundian (lalai): Setiap permintaan diberikan kepada pelayan bahagian belakang yang berbeza satu demi satu dalam susunan kronologi Jika pelayan bahagian belakang menurun, ia boleh dihapuskan secara automatik.

    • berat: Nyatakan kebarangkalian pengundian, berat adalah berkadar dengan nisbah akses, dan digunakan apabila prestasi pelayan bahagian belakang tidak sekata.

    • ip_hash: Setiap permintaan diperuntukkan mengikut hasil cincang IP yang diakses, supaya setiap pelawat mempunyai akses tetap kepada pelayan bahagian belakang, yang boleh menyelesaikan masalah sesi.

    • adil (pihak ketiga): Peruntukkan permintaan mengikut masa respons pelayan bahagian belakang, dengan keutamaan diberikan kepada mereka yang mempunyai masa respons yang singkat.

    • url_hash (pihak ketiga): Edarkan permintaan mengikut hasil cincangan URL yang diakses, supaya setiap URL dihalakan ke pelayan bahagian belakang yang sama Ia lebih berkesan apabila pelayan bahagian belakang dicache.

    balas
    0
  • Batalbalas