


Apakah kaedah untuk meningkatkan kelancaran persekitaran pengeluaran Nginx?
1. Latar Belakang
Baru-baru ini saya menghadapi masalah yang agak memalukan dan praktikal, iaitu Nginx yang digunakan dalam persekitaran pengeluaran kami adalah barang antik Centos6. Keperluan perniagaan perlu dilaksanakan dengan memuatkan modul Nginx, tetapi versinya terlalu lama dan memerlukan Nginx1.18 atau lebih baru untuk menyokongnya, dan milik kami ialah Nginx1.12. Kemudian menaik taraf Nginx adalah perkara yang perlu kita lakukan. Tetapi dalam persekitaran pengeluaran, anda perlu mempertimbangkan banyak perkara Tidak seperti pelayan ujian, Nginx menghentikan perkhidmatan, menyusun semula versi baharu, dan kemudian memulakannya semula. Perkhidmatan dalam talian kami perlu disediakan tanpa gangguan, jika tidak, ia akan menyebabkan kerugian ekonomi kepada perniagaan Jadi adakah ada rancangan untuk menaik taraf versi Nginx dengan lancar?
2. rasmi Kami telah melakukan banyak kerja pada peningkatan lancar Nginx Prinsip asasnya adalah untuk memulakan proses Nginx (tuan+pekerja) baharu, dan kemudian menghantar arahan -USER2 ke proses induk lama, supaya yang baharu dan. versi lama proses boleh menerima permintaan pemprosesan pada masa yang sama. Selepas itu, kami menghantar -WINCH ke proses lama untuk menghentikan perkhidmatan kerja (tutup semua proses pekerja lama, tetapi proses induk lama tidak ditutup untuk mengelakkan anda daripada menghadapi masalah kemudian). Nginx baharu, kemudian Matikan proses induk lama secara manual untuk melengkapkan peningkatan yang lancar.
3 Proses operasi
1 🎜>
[root@k8s-master nginx-1.12.2]# ps aux | grep 'nginx' | grep -v '7月' | grep -v 'grep' root 15180 0.0 0.0 46136 920 ? Ss 17:22 0:00 nginx: master process ./nginx-1.12.2/sbin/nginx nobody 15181 0.0 0.1 46584 4344 ? S 17:22 0:00 nginx: worker process
2 nginx -V Lihat parameter kompilasi versi lama nginx
[root@k8s-master nginx-1.12.2]# nginx-1.12.2/sbin/nginx.old.1.12 -V nginx version: nginx/1.12.2 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) built with OpenSSL 1.0.2k-fips 26 Jan 2017 TLS SNI support enabled configure arguments: --prefix=nginx-1.12.2 --with-pcre=/root/nginx-test/pcre-8.45/ --with-http_stub_status_module --with-http_gzip_static_module --with-http_ssl_module --with-stream [root@k8s-master nginx-1.12.2]#
mv nginx nginx.old
4. Pada masa ini kami memuat turun [nginx1.20.2] Kompil semula versi baharu dan ikut parameter kompilasi versi lama (atau tambah sendiri modul kompilasi baharu)
5 nginx dan alihkannya ke laluan nginx versi lama sebelumnya untuk menulis gantinya.
./configure --prefix=/usr/local/ --with-stream xxxx[模块列表] make &make install
6 Hantar nginx -USR2 15180 (proses utama nginx lama) untuk penggantian pada masa ini nginx memproses 2 proses nginx baharu
Ini Apabila permintaan diuji, beban diseimbangkan kepada dua tuan ini7 Sahkan bahawa naik taraf berjaya, -Isyarat WINCH menghentikan induk versi lama daripada menerima permintaan baharu (pada masa ini, proses induk nginx versi lama tidak mati, tetapi hanya berhenti menerima permintaan baharu)
kill -winch 15180
Pada masa ini, jika URL diakses beberapa kali, pengimbangan beban tidak akan berlaku.
8 Ia juga sangat mudah untuk melancarkan versi, hanya hantar kill -HUP 15180 (proses induk nginx lama)
<.>
Pada masa ini kedua-dua versi lama dan versi baharu nginx adalah pengimbangan beban kali ini versi baru nginx telah dibunuh -QUIT.
Atas ialah kandungan terperinci Apakah kaedah untuk meningkatkan kelancaran persekitaran pengeluaran Nginx?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Bagaimana cara mengkonfigurasi nginx di Windows? Pasang Nginx dan buat konfigurasi hos maya. Ubah suai fail konfigurasi utama dan sertakan konfigurasi hos maya. Mulakan atau Muat semula Nginx. Uji konfigurasi dan lihat laman web. Selektif membolehkan SSL dan mengkonfigurasi sijil SSL. Selektif tetapkan firewall untuk membolehkan trafik port 80 dan 443.

Docker Container Startup Langkah: Tarik Imej Bekas: Run "Docker Pull [Mirror Name]". Buat bekas: Gunakan "Docker Buat [Pilihan] [Nama Mirror] [Perintah dan Parameter]". Mulakan bekas: Jalankan "Docker Start [Nama Container atau ID]". Semak Status Kontena: Sahkan bahawa bekas sedang berjalan dengan "Docker PS".

Anda boleh menanyakan nama kontena Docker dengan mengikuti langkah -langkah: Senaraikan semua bekas (Docker PS). Tapis senarai kontena (menggunakan arahan grep). Mendapat nama kontena (terletak di lajur "Nama").

Bagaimana untuk mengesahkan sama ada nginx dimulakan: 1. Gunakan baris arahan: status sistem sistem nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. Periksa sama ada port 80 dibuka; 3. Semak mesej permulaan Nginx dalam log sistem; 4. Gunakan alat pihak ketiga, seperti Nagios, Zabbix, dan Icinga.

Buat bekas di Docker: 1. Tarik Imej: Docker Pull [Nama Cermin] 2. Buat bekas: Docker Run [Options] [Mirror Name] [Command] 3. Mulailah bekas: Docker Start [Nama Container]

Cara mengkonfigurasi nama domain Nginx pada pelayan awan: Buat rekod yang menunjuk ke alamat IP awam pelayan awan. Tambah blok hos maya dalam fail konfigurasi Nginx, menyatakan port pendengaran, nama domain, dan direktori akar laman web. Mulakan semula nginx untuk memohon perubahan. Akses konfigurasi ujian nama domain. Nota Lain: Pasang sijil SSL untuk membolehkan HTTPS, pastikan firewall membenarkan trafik port 80, dan tunggu resolusi DNS berkuatkuasa.

Kaedah yang boleh menanyakan versi nginx adalah: gunakan perintah nginx -v; Lihat arahan versi dalam fail nginx.conf; Buka halaman ralat Nginx dan lihat tajuk halaman.

Apabila pelayan Nginx turun, anda boleh melakukan langkah penyelesaian masalah berikut: periksa bahawa proses Nginx sedang berjalan. Lihat log ralat untuk mesej ralat. Semak sintaks konfigurasi Nginx. Pastikan Nginx mempunyai keizinan yang anda perlukan untuk mengakses fail. Semak deskriptor fail untuk membuka had. Sahkan bahawa Nginx sedang mendengar di port yang betul. Tambah peraturan firewall untuk membolehkan trafik nginx. Semak tetapan proksi terbalik, termasuk ketersediaan pelayan backend. Untuk bantuan lanjut, sila hubungi Sokongan Teknikal.
