Rumah >Operasi dan penyelenggaraan >Nginx >Bagaimana untuk mengkonfigurasi mengimbangi beban Nginx berbilang kucing jantan di bawah Linux
Satu: Masukkan direktori conf di bawah direktori nginx
Ini ialah direktori pemasangan nginx saya:
[root@aliserver ~]# cd /usr/local/nginx/conf
Dua: Edit nginx.conf
[root@aliserver conf]# vi nginx.conf
Tiga: Konfigurasikan kumpulan pelayan
1: Tambahkan konfigurasi huluan antara nod http{}. (Berhati-hati untuk tidak menulis localhost, jika tidak kelajuan akses akan menjadi sangat perlahan)
upstream nginxdemo { server 127.0.0.1:8081; #服务器地址1 server 127.0.0.1:8082; #服务器地址2 server 127.0.0.1:8082; #服务器地址3 server 127.0.0.1:8083; #服务器地址4 }
2: Ubah suai nombor port yang nginx dengar kepada 80
Port lalai nginx ialah 80. Saya belum menukarnya di sini lagi
server { listen 80; #默认是80,也可更改为其他的,当然已被占用的端口号不能写。 ...... }
3: Gunakan proxy_pass untuk mengkonfigurasi alamat proksi terbalik
Di lokasi{}, "http://" tidak boleh hilang, dan alamat berikut mestilah sama dengan alamat di lokasi{}. Nama yang ditakrifkan dalam langkah huluan mestilah konsisten (iaitu, nama nginxdemo disesuaikan dan perlu konsisten di kedua-dua tempat)
location / { root html; index index.html index.htm; proxy_pass http://nginxdemo; #配置方向代理地址 }
Selepas konfigurasi selesai, seperti yang ditunjukkan dalam rajah:
Empat: Mulakan nginx
Laluan pemasangan nginx saya ialah /usr/local/nginx
Jadi arahan permulaan saya ialah :
[root@aliserver ~]# /usr/local/nginx/sbin/nginx
Oleh kerana nginx telah dimulakan sebelum pemasangan, dan kini ia melaporkan ralat bahawa nombor port adalah diduduki apabila ia dimulakan semula
Pada masa ini kami menggunakan arahan Semak penghunian setiap nombor port
[root@aliserver ~]# netstat -ntpl
Kami melihat bahawa nginx diduduki oleh pid 9097. Gunakan kill -9 untuk membunuhnya
[root@aliserver ~]# kill -9 9097
Mulakan nginx sekali lagi
[root@aliserver ~]# /usr/local/nginx/sbin/nginx
Tiada respons, betul sekarang masukkan alamat pelayan anda dalam penyemak imbas
Ini bermakna nginx dimulakan dengan jayanya Sama ada konfigurasi betul dan sama ada beban boleh diseimbangkan kini disahkan. . .
Lima: Pengesahan
Kita semua tahu bahawa apabila mengimbangi beban nginx, semua permintaan pelanggan melalui nginx, maka nginx boleh memutuskan kepada siapa untuk memajukan permintaan ini, jika Pelayan A mempunyai lebih banyak sumber yang mencukupi (lebih banyak CPU, memori yang lebih besar, dsb.), dan Pelayan B tidak mempunyai keupayaan pemprosesan sekuat Pelayan A. Kemudian nginx akan memajukan lebih banyak permintaan kepada Pelayan A dan lebih sedikit permintaan kepada Pelayan B, supaya Ini mencapai pengimbangan beban, dan walaupun salah satu pelayan tidak berfungsi, pengguna masih boleh mengakses tapak web seperti biasa.
Sebelum mengesahkan, anda perlu membuat beberapa persediaan.
1: Sediakan jsp yang lebih mudah, seperti:
Saya mempunyai 4 kucing jantan yang dipasang pada pelayan, jadi saya menyediakan empat indeks. fail jsp
ialah
<title>tomcat8080<title> <h1>hellow tomcat_8080</h1> <title>tomcat8081<title> <h1>hellow tomcat_8081</h1> <title>tomcat8082<title> <h1>hellow tomcat_8082</h1> <title>tomcat8083<title> <h1>hellow tomcat_8083</h1>
Apa yang perlu diperhatikan di sini ialah: nama fail jsp mestilah index.jsp, kerana gambar tomcat bermula dengan jayanya adalah seperti yang ditunjukkan dalam gambar:
Bacaan ialah webapps/root/index.jsp dalam direktori pemasangan tomcat
Alamat saya ialah: /usr/java/tomcat/ tomcat_8080/ webapps/root
Tulis ganti setiap fail index.jsp lalai tomcat dengan empat fail index.jsp yang disediakan sebelum ini.
Mulakan setiap kucing jantan
[root@aliserver bin]# ./startup.sh
Pada masa ini, kami memasukkan xxx.xxx.xx.xx:8080 dalam penyemak imbas Anda akan mendapati bahawa anak kucing itu tidak lagi muncul, tetapi. . . . . .
Keempat-empat kucing jantan telah bermula dengan jayanya, dan nginx juga telah bermula dengan jayanya.
Pada masa ini, masukkan IP pelayan anda dalam penyemak imbas dan teruskan menyegarkan halaman Anda akan mendapati halaman tersebut akan memaparkan 8080 untuk seketika, 8081 untuk seketika, 8082 untuk seketika dan 8083 untuk seketika. sementara. Sudah tentu, ini adalah nginx yang menentukan ke mana permintaan itu pergi berdasarkan pelayan yang mempunyai lebih banyak sumber Alamat permintaan kami dalam penyemak imbas tetap tidak berubah, tetapi kami mengakses pelayan tomcat yang berbeza. Ini bermakna nginx berjaya dikonfigurasikan.
Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi mengimbangi beban Nginx berbilang kucing jantan di bawah Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!