Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Penjelasan terperinci tentang konfigurasi huluan Nginx untuk membaiki kegagalan laman web

Penjelasan terperinci tentang konfigurasi huluan Nginx untuk membaiki kegagalan laman web

WBOY
WBOYasal
2023-07-04 12:25:1815506semak imbas

Penjelasan terperinci tentang konfigurasi huluan Nginx untuk membaiki kegagalan tapak web

Pengenalan:
Nginx ialah pelayan proksi HTTP berprestasi tinggi dan fungsinya yang berkuasa dan konfigurasi fleksibel menjadikannya pilihan yang ideal untuk banyak tapak web dan perkhidmatan. Semasa operasi laman web, kegagalan dan kemuncak beban pasti akan berlaku. Untuk memastikan ketersediaan dan kestabilan laman web, kita perlu menguasai kemahiran konfigurasi huluan Nginx. Artikel ini akan memperkenalkan secara terperinci prinsip dan penggunaan konfigurasi hulu Nginx, dan menunjukkan melalui contoh kod cara menggunakan konfigurasi huluan untuk membaiki kegagalan tapak web.

1. Prinsip konfigurasi huluan Nginx
Modul huluan Nginx membolehkan kami mentakrifkan sekumpulan pelayan bahagian belakang dan memajukan permintaan pelanggan kepada pelayan bahagian belakang ini mengikut dasar tertentu. Melalui konfigurasi huluan, fungsi seperti pengimbangan beban dan failover boleh dicapai. Nginx secara automatik memilih pelayan bahagian belakang berdasarkan dasar yang dikonfigurasikan dan memajukan permintaan pelanggan ke pelayan yang dipilih. Apabila pelayan bahagian belakang gagal, Nginx menyokong secara automatik menghapuskan pelayan yang gagal dan mengagihkan semula permintaan kepada pelayan biasa yang lain.

2. Cara menggunakan konfigurasi hulu Nginx

  1. Tentukan blok huluan
    Dalam fail konfigurasi Nginx, tentukan blok huluan melalui kata kunci huluan. Setiap blok huluan boleh mengandungi berbilang pelayan bahagian belakang dan boleh menetapkan strategi pengimbangan beban dan parameter yang berkaitan. Berikut ialah contoh:
upstream backend {
    server backend1.example.com;
    server backend2.example.com;
    server backend3.example.com;
}

Dalam konfigurasi di atas, kami menentukan blok huluan bernama "backend", yang mengandungi tiga pelayan backend.

  1. Menggunakan blok huluan
    Dalam fail konfigurasi Nginx, permintaan pelanggan boleh dimajukan ke pelayan hujung belakang yang ditakrifkan oleh blok huluan melalui arahan proxy_pass. Berikut ialah contoh konfigurasi:
location / {
    proxy_pass http://backend;
}

Dalam konfigurasi di atas, kami memajukan permintaan pelanggan ke pelayan hujung belakang yang ditakrifkan dalam blok huluan bernama "backend".

3. Cara menggunakan konfigurasi huluan untuk membaiki kegagalan tapak web
Dalam operasi tapak web sebenar, kami sering menghadapi kegagalan pelayan bahagian belakang. Untuk mengekalkan ketersediaan tapak web, kami perlu mengesan dan menyelesaikan kegagalan tepat pada masanya dan memastikan pelayan yang gagal tidak menjejaskan kualiti perkhidmatan keseluruhan. Dengan mengkonfigurasi blok huluan dengan betul, kami boleh melaksanakan failover dan pembaikan dengan mudah.

  1. Kesan ketersediaan pelayan bahagian belakang
    Nginx menyokong pelbagai kaedah untuk mengesan ketersediaan pelayan bahagian belakang, termasuk HTTP, TCP dan UDP. Dalam blok huluan, kami boleh mendayakan ciri pemeriksaan kesihatan dengan menetapkan kata kunci health_check. Berikut ialah contoh konfigurasi:
upstream backend {
    server backend1.example.com;
    server backend2.example.com;
    server backend3.example.com;

    health_check;
}

Dalam konfigurasi di atas, kami mendayakan fungsi pemeriksaan kesihatan dengan menetapkan kata kunci health_check. Nginx akan menghantar permintaan secara berkala ke pelayan bahagian belakang dan menentukan ketersediaan pelayan berdasarkan kod status yang dikembalikan.

  1. Alih keluar pelayan yang rosak
    Apabila pelayan gagal, kami boleh mengalih keluar pelayan yang rosak secara manual atau automatik. Berikut ialah contoh konfigurasi:
upstream backend {
    server backend1.example.com;
    server backend2.example.com down;
    server backend3.example.com;

    health_check;
}

Dalam konfigurasi di atas, kami menambah kata kunci bawah selepas konfigurasi pelayan yang gagal. Apabila Nginx mengesan kegagalan pelayan, ia akan mengalih keluar pelayan yang ditandakan turun secara automatik daripada julat pemilihan blok huluan.

  1. Tetapkan bilangan maksimum kegagalan
    Untuk mengelakkan salah penilaian dan kegagalan yang kerap, kami boleh mengehadkan bilangan maksimum kegagalan pelayan yang gagal dengan menetapkan kata kunci max_fails. Berikut ialah contoh konfigurasi:
upstream backend {
    server backend1.example.com max_fails=3 fail_timeout=30s;
    server backend2.example.com down;
    server backend3.example.com max_fails=3 fail_timeout=30s;

    health_check;
}

Dalam konfigurasi di atas, kami menggunakan kata kunci max_fails untuk menetapkan bilangan kegagalan maksimum untuk pelayan yang rosak kepada 3 kali. Apabila bilangan kegagalan pelayan mencapai had, Nginx akan mengeluarkannya daripada julat pemilihan dan tidak lagi cuba menyambung dalam tempoh tamat masa yang ditetapkan.

Kesimpulan:
Dengan mengkonfigurasi blok hulu Nginx dengan betul, kami boleh mencapai fungsi seperti pengimbangan beban dan failover, serta meningkatkan ketersediaan dan kestabilan tapak web. Semasa pengendalian tapak web, kami harus segera menemui dan membaiki kegagalan pelayan bahagian belakang, dan memastikan ketersediaan pelayan melalui pemeriksaan kesihatan huluan dan fungsi penghapusan kesalahan. Saya harap artikel ini akan membantu anda memahami prinsip dan penggunaan konfigurasi huluan Nginx, dan memberikan bantuan dan panduan semasa membaiki kegagalan tapak web.

Atas ialah kandungan terperinci Penjelasan terperinci tentang konfigurasi huluan Nginx untuk membaiki kegagalan laman web. 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