Bagaimana untuk membina pelayan pengimbangan beban berdasarkan Centos7+Nginx+Tomcat8

WBOY
Lepaskan: 2023-05-12 23:16:16
ke hadapan
1314 orang telah melayarinya

Selepas memasang nginx secara manual, semuanya adalah normal, hos maya dan konfigurasi pengimbangan beban semuanya tanpa sebarang masalah. Ia berjaya didayakan. Fail konfigurasi khusus adalah seperti berikut:

Ditambah: masukkan vhost/*.conf ke fail nginx.conf conf untuk memperkenalkan semua fail .conf dalam direktori vhost untuk konfigurasi masa hadapan. Mudah, sudah tentu, anda boleh menambahnya satu persatu jika perlu.

Oleh kerana perkhidmatan muat adalah perkhidmatan api, nama fail conf di sini dipanggil api.xxx.com.conf Konfigurasi untuk membuka fail adalah seperti berikut:

Bagaimana untuk membina pelayan pengimbangan beban berdasarkan Centos7+Nginx+Tomcat8

Kaedah tinjauan IP tidak digunakan di sini, tetapi kaedah usstream digunakan Untuk perbezaan khusus antara kaedah ini, anda boleh Baidu atau Google untuk pengenalan yang berkaitan. Perlu diingatkan bahawa proxy_pass, yang dikonfigurasikan di sini, ialah nama huluan Lain-lain tidak dibenarkan untuk digunakan Jika alamat IP dikonfigurasikan secara langsung, pengimbangan beban tidak akan dicapai.

Berat yang diwakili oleh berat, semakin besar bilangannya, semakin tinggi beratnya, semakin besar peluang untuk sandaran mewakili pelayan siap sedia panas, iaitu apabila terdapat masalah dengan dua beban pertama. pelayan siap sedia panas Lawatan ini akan diandaikan secara automatik.

Pada ketika ini, konfigurasi pengimbangan beban nginx selesai Namun, disebabkan beban yang terlibat, jika ia adalah URL biasa, kehilangan sesi akan berlaku apabila mengaksesnya adalah perlu untuk menangani masalah kehilangan sesi, untuk menangani masalah ini, terdapat pelbagai penyelesaian Satu adalah menggunakan proksi kuki, dan satu lagi untuk merealisasikan perkongsian sesi konfigurasi perlu dilakukan dalam tomcat Untuk mencapai Keperluan ini, pelayan kongsi sesi yang dikonfigurasikan di sini ialah perkhidmatan memori redis, terutamanya untuk memastikan pembacaan dan penyimpanan data yang cekap Apabila menggunakan redis untuk perkongsian sesi, nama berikut mesti ditambah:

Bagaimana untuk membina pelayan pengimbangan beban berdasarkan Centos7+Nginx+Tomcat8Pakej ini menyokong tomcat8 tanpa sebarang masalah Tiada ujian berkaitan telah dijalankan ke atas status sokongan khusus versi lain.

Kemudian ubah suai fail konfigurasi dalam tomcat:

Bagaimana untuk membina pelayan pengimbangan beban berdasarkan Centos7+Nginx+Tomcat8

Alamat 10.0.0.x yang dilihat di sini semuanya lengkap dalam rangkaian dalaman disekat, dan hanya pelayan yang bertanggungjawab untuk beban disambungkan terus ke rangkaian luaran.

Pada masa ini, pelayan tomcat dan pelayan nginx boleh dimulakan dengan lancar, tetapi sebelum itu, pelayan nginx mesti dimulakan terlebih dahulu, jika tidak tomcat mungkin gagal dimulakan. Perkhidmatan nginx boleh dimulakan dengan lancar

Tiga konfigurasi adalah seperti berikut:

Kandungan rujukan yang ditambahkan dalam nginx.conf

include vhost/*.conf;
Salin selepas log masuk

Konfigurasi pengimbangan beban:

upstream api.xxx.com {
 server 10.0.0.12:8080 weight=5;
 server 10.0.0.15:8081 weight=5 ;
 server 10.0.0.16:8080 weight=5 backup;
}
server {
 listen    80;
 server_name api.xxx.com;
 location /
  {
   proxy_set_header host $host;
   proxy_set_header x-real-ip $remote_addr;
   proxy_set_header x-forwarded-for $remote_addr;
   proxy_pass http://api.xxx.com;
    }
}
Salin selepas log masuk

konfigurasi tomcat

<valve classname="com.radiadesign.catalina.session.redissessionhandlervalve" />
<manager classname="com.radiadesign.catalina.session.redissessionmanager" 
       host="10.0.0.16" 
       port="10000" 
       database="0" 
       maxinactiveinterval="60" />
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk membina pelayan pengimbangan beban berdasarkan Centos7+Nginx+Tomcat8. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
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