Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Nginx memantau konfigurasi status masa nyata dan melihat operasi laman web dalam masa nyata

Nginx memantau konfigurasi status masa nyata dan melihat operasi laman web dalam masa nyata

WBOY
WBOYasal
2023-07-04 17:18:262441semak imbas

Nginx memantau konfigurasi status masa nyata dan melihat operasi tapak web dalam masa nyata

Pengenalan:
Nginx ialah pelayan proksi terbalik yang sangat popular dengan prestasi tinggi dan keselarasan tinggi menjadikannya pilihan pertama untuk banyak tapak web. Untuk memastikan operasi laman web yang stabil, kami perlu memantau status berjalan Nginx pada setiap masa. Artikel ini akan memperkenalkan cara mengkonfigurasi pemantauan status masa nyata Nginx, dan menggunakan kod sampel untuk memberikan pemahaman yang lebih baik kepada pembaca.

1. Pasang modul pemantauan status Nginx

Untuk melaksanakan pemantauan status masa nyata Nginx, anda perlu memasang modul ngx_http_stub_status pada Nginx. Mula-mula, pastikan Nginx telah dipasang, kemudian pergi ke direktori sumber Nginx dan laksanakan arahan berikut:

./configure --prefix=/usr/local/nginx --add-module=../ngx_http_stub_status_module
make
make install

Selepas pemasangan selesai, tambah item konfigurasi berikut dalam fail konfigurasi Nginx:

location /status {
    stub_status;
    access_log off;
    allow 127.0.0.1;
    deny all;
}

Mulakan semula Nginx untuk membuat konfigurasi berkuat kuasa:

/usr/local/nginx/sbin/nginx -s reload

Kini Anda boleh melihat maklumat status masa nyata Nginx dengan melawati "http://yourdomain/status".

2. Perihalan format data pemantauan status Nginx

Data pemantauan status Nginx ialah format teks ringkas, termasuk bilangan sambungan semasa, bilangan permintaan, bilangan bait yang dibaca dan ditulis serta maklumat lain. Berikut ialah contoh:

Active connections: 10
server accepts handled requests
 10000 10000 10000
Reading: 0 Writing: 1 Waiting: 9

Antaranya, "Sambungan aktif" mewakili bilangan sambungan aktif semasa, "Membaca" mewakili bilangan sambungan yang membaca permintaan pelanggan dan "Menulis" mewakili bilangan sambungan yang menulis respons kepada pelanggan. "Menunggu" menunjukkan bilangan sambungan terbiar menunggu permintaan pelanggan.

3. Dapatkan status Nginx dalam masa nyata melalui kod

Berikut ialah contoh kod yang ditulis dalam Python, yang boleh mendapatkan maklumat status Nginx dalam masa nyata dan memaparkannya.

import requests

response = requests.get('http://yourdomain/status')
status = response.text.split('
')

active_connections = status[0].split(':')[1].strip()
reading_connections = status[3].split(':')[1].strip()
writing_connections = status[4].split(':')[1].strip()
waiting_connections = status[5].split(':')[1].strip()

print('活动连接数:', active_connections)
print('正在读取连接数:', reading_connections)
print('正在写入连接数:', writing_connections)
print('等待连接数:', waiting_connections)

Melalui kod di atas, kita boleh mendapatkan maklumat penting seperti bilangan sambungan Nginx dalam masa nyata dan mencetaknya. Anda juga boleh memproses maklumat status yang diperolehi mengikut keperluan anda, seperti menyimpannya ke pangkalan data untuk analisis seterusnya.

Kesimpulan:
Pemantauan status masa nyata Nginx adalah sangat penting untuk memastikan operasi tapak web yang stabil. Dengan memasang dan mengkonfigurasi modul ngx_http_stub_status, kami boleh mendapatkan data status masa nyata Nginx dengan mudah. Melalui contoh kod, kami boleh mendapatkan dan memaparkan maklumat status Nginx dalam masa nyata, membolehkan kami memahami dan menyelenggara laman web kami dengan lebih baik. Saya harap artikel ini akan membantu semua orang dalam pemantauan status Nginx!

Atas ialah kandungan terperinci Nginx memantau konfigurasi status masa nyata dan melihat operasi laman web dalam masa nyata. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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