Cara menggunakan NGINX dan PM2 untuk mengoptimumkan pengimbangan beban pelayan VPS

王林
Lepaskan: 2023-09-26 18:17:07
asal
809 orang telah melayarinya

Cara menggunakan NGINX dan PM2 untuk mengoptimumkan pengimbangan beban pelayan VPS

Cara menggunakan NGINX dan PM2 untuk mengoptimumkan pengimbangan beban pelayan VPS

Pengenalan:
Dalam aplikasi web moden, pengimbangan beban adalah teknologi yang sangat kritikal. Ia boleh meningkatkan kebolehskalaan dan kebolehpercayaan aplikasi dengan menyebarkan trafik merentasi berbilang pelayan. Dalam artikel ini, kami akan memperkenalkan cara menggunakan NGINX dan PM2 untuk mengoptimumkan pengimbangan beban pelayan VPS. Kami akan menerangkan setiap langkah secara terperinci dengan contoh kod tertentu.

Langkah 1: Pasang NGINX
Mula-mula, kita perlu memasang NGINX, iaitu pelayan web berprestasi tinggi dan pelayan proksi terbalik. Berikut ialah arahan khusus untuk memasang NGINX pada Ubuntu:

$ apt-get update
$ apt-get install nginx
Salin selepas log masuk

Langkah 2: Konfigurasikan NGINX
Setelah pemasangan selesai, kita perlu melakukan beberapa konfigurasi NGINX. Berikut ialah kandungan fail konfigurasi contoh:

http {
    upstream backend {
        server backend1.example.com;
        server backend2.example.com;
    }

    server {
        listen 80;

        location / {
            proxy_pass http://backend;
        }
    }
}
Salin selepas log masuk

Dalam contoh di atas, kami menyediakan kluster pelayan bernama backend, yang mengandungi dua pelayan backend backend1.example.com dan backend2.example.com. Kami kemudian akan mendengar pada port 80 dan proksi semua trafik ke kluster pelayan bahagian belakang.

Langkah 3: Pasang PM2
Seterusnya, kita perlu memasang pengurus proses PM2. PM2 boleh membantu kami melancarkan dan mengurus aplikasi Node.js pada pelayan. Berikut ialah arahan khusus untuk memasang PM2 pada Ubuntu:

$ npm install pm2 -g
Salin selepas log masuk

Langkah Empat: Sebarkan aplikasi pada pelayan bahagian belakang
Sebelum kami meneruskan, kami perlu menggunakan aplikasi Node.js yang ringkas pada pelayan bahagian belakang. Berikut ialah contoh kod untuk aplikasi Express yang ringkas:

const express = require('express');
const app = express();

app.get('/', (req, res) => {
    res.send('Hello, World!');
});

app.listen(3000, () => {
    console.log('App is running on port 3000');
});
Salin selepas log masuk

Simpan kod di atas sebagai app.js dan jalankan arahan berikut pada pelayan bahagian belakang untuk memulakan aplikasi:

$ node app.js
Salin selepas log masuk

Sekarang, aplikasi kami harus berfungsi melalui Lawati http:/ /backend1.example.com:3000 untuk mengaksesnya.

Langkah 5: Gunakan PM2 untuk memulakan aplikasi pada pelayan bahagian belakang
Untuk menggunakan PM2 untuk pengurusan proses, kita perlu memasukkan direktori di mana aplikasi terletak dan menggunakan arahan berikut untuk memulakan aplikasi:

$ pm2 start app.js
Salin selepas log masuk

The arahan di atas menganggap aplikasi sebagai Daemon berjalan di latar belakang dan secara automatik mengendalikan perkara seperti permulaan semula aplikasi dan pengurusan log.

Langkah 6: Konfigurasikan Pengimbangan Beban dalam NGINX
Kini, kami telah mengkonfigurasi NGINX dan memulakan aplikasi Node.js pada pelayan bahagian belakang. Kita perlu mengubah suai fail konfigurasi NGINX untuk mencapai pengimbangan beban. Berikut ialah kandungan fail konfigurasi sampel yang diubah suai:

http {
    upstream backend {
        server backend1.example.com:3000;
        server backend2.example.com:3000;
    }

    server {
        listen 80;

        location / {
            proxy_pass http://backend;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }
}
Salin selepas log masuk

Dalam fail konfigurasi di atas, kami menukar port pelayan hujung belakang daripada 80 kepada 3000 dan menambahkan arahan proxy_set_header untuk menghantar beberapa maklumat pengepala HTTP utama.

Langkah 7: Mulakan semula perkhidmatan NGINX dan PM2
Sebelum kami melakukan ujian pengimbangan beban, kami perlu memulakan semula perkhidmatan NGINX dan PM2 untuk perubahan berkuat kuasa. Berikut ialah arahan mulakan semula:

$ service nginx restart
$ pm2 restart all
Salin selepas log masuk

Langkah 8: Uji pengimbangan beban
Kini, kita boleh menggunakan pelayar web atau arahan curl untuk menguji sama ada pengimbangan beban berfungsi dengan betul. Kita seharusnya boleh mendapatkan respons "Hello, World!" dengan melawati http://yourdomain.com. Setiap kali kami memuat semula halaman, kami akan melihat nama pelayan yang berbeza untuk pelayan bahagian belakang, yang bermaksud pengimbangan beban sedang berkuat kuasa.

Kesimpulan:
Dengan menggunakan NGINX dan PM2, kami boleh mencapai pengimbangan beban dengan mudah pada pelayan VPS. Pengimbangan beban boleh meningkatkan kebolehskalaan dan kebolehpercayaan aplikasi untuk memberi perkhidmatan yang lebih baik kepada pengguna. Kami berharap contoh dan langkah kod khusus yang disediakan dalam artikel ini dapat membantu pembaca mengamalkan pengoptimuman pelayan dan pengimbangan beban dengan lebih baik.

Atas ialah kandungan terperinci Cara menggunakan NGINX dan PM2 untuk mengoptimumkan pengimbangan beban pelayan VPS. 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