Cara menggunakan Nginx untuk proksi terbalik dan mengimbangi beban permintaan HTTP

PHPz
Lepaskan: 2023-08-03 11:45:39
asal
1408 orang telah melayarinya

Cara menggunakan Nginx untuk proksi terbalik dan mengimbangi beban permintaan HTTP

Pengenalan:
Dengan perkembangan pesat Internet, semakin banyak tapak web perlu mengendalikan sejumlah besar permintaan HTTP. Dalam kes ini, untuk memastikan kestabilan dan kebolehskalaan sistem, adalah sangat penting untuk menggunakan proksi terbalik dan pengimbangan beban. Sebagai pelayan web berprestasi tinggi, Nginx menyediakan proksi terbalik dan fungsi pengimbangan beban Artikel ini akan memperkenalkan secara terperinci cara menggunakan Nginx untuk melaksanakan proksi terbalik dan pengimbangan beban permintaan HTTP.

1. Apa itu proksi terbalik dan mengimbangi beban

  1. Proksi terbalik
    Proksi terbalik ialah pelanggan tidak berkomunikasi secara langsung dengan pelayan, tetapi berkomunikasi dengan pelayan proksi terbalik, dan kemudian pelayan proksi terbalik memajukan permintaan kepada The pelayan sebenar pada klien melakukan pemprosesan dan mengembalikan hasilnya kepada klien. Proksi terbalik menyembunyikan butiran pelayan bahagian belakang dan boleh meningkatkan keselamatan dan kebolehskalaan sistem.
  2. Pengimbangan beban
    Pengimbangan beban adalah untuk mengagihkan permintaan daripada pelanggan kepada berbilang pelayan secara sama rata untuk mencapai penggunaan sumber yang lebih baik dan kelajuan tindak balas perkhidmatan. Pengimbangan beban boleh meningkatkan kebolehpercayaan dan prestasi sistem.

2. Gunakan Nginx untuk proksi terbalik

  1. Pasang Nginx
    Pertama, anda perlu memasang Nginx. Mengambil Ubuntu sebagai contoh, laksanakan arahan berikut untuk memasang:

    sudo apt-get update
    sudo apt-get install nginx
    Salin selepas log masuk
  2. Konfigurasikan proksi terbalik
    dalam fail konfigurasi Nginx (biasanya /etc/nginx/nginx.conf atau / dll /nginx/conf.d/default.conf), tambah konfigurasi berikut: /etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf)中添加以下配置:

    http {
     server {
         listen 80;
         server_name yourdomain.com;
    
         location / {
             proxy_pass http://backend-server;
         }
     }
    
     upstream backend-server {
         server backend1 ip:port;
         server backend2 ip:port;
         server backend3 ip:port;
         # 可以根据需求配置更多的后端服务器
     }
    }
    Salin selepas log masuk

    这里通过 location / 指定了当有请求访问 / 路径时,将请求转发到 backend-server 中配置的后端服务器上。

  3. 重启Nginx
    配置完毕后,执行以下命令重新加载Nginx的配置文件:

    sudo systemctl restart nginx
    Salin selepas log masuk

    至此,Nginx的反向代理配置完成。

三、使用Nginx进行负载均衡

  1. 配置负载均衡
    在Nginx的配置文件中的 upstream backend-server 部分,可以配置多个后端服务器,Nginx会自动将请求均衡分发到这些服务器上。可以采用不同的负载均衡策略,例如轮询、IP哈希等。以下是一个轮询的示例配置:

    http {
     upstream backend-server {
         server backend1 ip:port;
         server backend2 ip:port;
         server backend3 ip:port;
         # 可以根据需求配置更多的后端服务器
         # 默认采用轮询策略
     }
    }
    Salin selepas log masuk
  2. 测试负载均衡
    配置完成后,可以通过以下命令测试负载均衡的效果:

    for i in {1..10}; do curl yourdomain.com; done
    Salin selepas log masuk

    这里使用了 curl 命令来模拟发送10次请求到 yourdomain.comrrreee

    Ini ditentukan melalui lokasi / apabila terdapat permintaan untuk mengakses / laluan , majukan permintaan ke pelayan hujung belakang yang dikonfigurasikan dalam pelayan belakang.


Mulakan semula Nginx

Selepas konfigurasi selesai, laksanakan arahan berikut untuk memuatkan semula fail konfigurasi Nginx: 🎜rrreee🎜Pada ketika ini, konfigurasi proksi terbalik Nginx selesai. 🎜🎜🎜🎜3 Gunakan Nginx untuk mengimbangi beban🎜🎜🎜🎜Konfigurasikan pengimbangan beban🎜Dalam bahagian upstream backend-server pada fail konfigurasi Nginx, anda boleh mengkonfigurasi berbilang pelayan backend, dan Nginx akan secara automatik Edarkan permintaan secara sama rata kepada pelayan ini. Strategi pengimbangan beban yang berbeza boleh diguna pakai, seperti pengundian, pencincangan IP, dsb. Berikut ialah contoh konfigurasi pengundian: 🎜rrreee🎜🎜🎜Menguji pengimbangan beban🎜Selepas konfigurasi selesai, anda boleh menguji kesan pengimbangan beban melalui arahan berikut: 🎜rrreee🎜Perintah curl digunakan di sini untuk mensimulasikan penghantaran Selepas 10 permintaan kepada yourdomain.com, anda boleh melihat bahawa permintaan itu akan diedarkan secara sama rata kepada berbilang pelayan belakang. 🎜🎜🎜🎜Kesimpulan: 🎜Melalui langkah di atas, kami mempelajari cara menggunakan Nginx untuk proksi terbalik dan pengimbangan beban permintaan HTTP. Proksi terbalik dan pengimbangan beban adalah komponen penting dalam membina sistem berprestasi tinggi dan ketersediaan tinggi dan digunakan secara meluas dalam aplikasi praktikal. Saya harap artikel ini dapat membantu pembaca memahami dan menggunakan dua fungsi yang disediakan oleh Nginx ini. 🎜

Atas ialah kandungan terperinci Cara menggunakan Nginx untuk proksi terbalik dan mengimbangi beban permintaan HTTP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan