


Cara menggunakan Nginx dengan FastAPI untuk proksi terbalik dan pengimbangan beban
Cara menggunakan Nginx dengan FastAPI untuk proksi terbalik dan pengimbangan beban
Pengenalan:
FastAPI dan Nginx ialah dua alatan pembangunan web yang sangat popular. FastAPI ialah rangka kerja Python berprestasi tinggi, dan Nginx ialah pelayan proksi terbalik yang berkuasa. Menggunakan kedua-dua alatan ini bersama-sama boleh meningkatkan prestasi dan kebolehpercayaan aplikasi web anda. Dalam artikel ini, kita akan belajar cara menggunakan Nginx dengan FastAPI untuk proksi terbalik dan pengimbangan beban.
- Apakah proksi terbalik dan pengimbangan beban?
Proksi terbalik ialah perkhidmatan rangkaian yang digunakan untuk memajukan permintaan pelanggan kepada sumber rangkaian dalaman. Tidak seperti proksi hadapan, pelayan proksi terbalik menyembunyikan butiran pelayan bahagian belakang dan pelanggan tidak boleh mengakses pelayan bahagian belakang secara langsung. Pelayan proksi terbalik memajukan permintaan pelanggan ke pelayan bahagian belakang mengikut peraturan tertentu, dengan itu menyediakan keselamatan dan pengimbangan beban.
Pengimbangan beban ialah teknologi yang mengedarkan permintaan kepada berbilang pelayan untuk meningkatkan prestasi dan kebolehpercayaan sistem. Apabila satu pelayan tidak dapat mengendalikan semua permintaan, pengimbangan beban mengedarkan permintaan kepada pelayan lain yang tersedia, dengan itu mengimbangi beban antara pelayan.
- Konfigurasikan proksi terbalik Nginx dan pengimbangan beban
Pertama, kita perlu memasang dan mengkonfigurasi pelayan Nginx. Di Ubuntu, anda boleh menggunakan arahan berikut untuk memasang:
sudo apt update sudo apt install nginx
Selepas pemasangan selesai, kami perlu mengubah suai fail konfigurasi Nginx. Buka fail konfigurasi Nginx menggunakan arahan berikut:
sudo nano /etc/nginx/sites-available/default
Dalam fail konfigurasi, kita perlu menambah konfigurasi berikut:
upstream backend { server 127.0.0.1:8000; server 127.0.0.1:8001; } server { listen 80; location / { proxy_pass http://backend; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }
Dalam konfigurasi di atas, kami telah menentukan gugusan pelayan huluan bernama "backend". Terdapat dua pelayan dalam kluster, masing-masing mendengar pada port 8000 dan 8001. Kami kemudiannya menentukan blok pelayan yang mendengar pada port 80 dan memajukan permintaan kepada pelayan dalam kelompok "belakang". Akhir sekali, kami menetapkan beberapa pengepala untuk permintaan proksi.
Selepas menyimpan dan keluar dari fail konfigurasi, mulakan semula pelayan Nginx:
sudo systemctl restart nginx
- Membuat aplikasi bahagian belakang menggunakan FastAPI
Seterusnya, kami akan mencipta aplikasi bahagian belakang yang mudah menggunakan FastAPI. Pertama, pastikan FastAPI dan uvicorn dipasang. Ia boleh dipasang menggunakan arahan berikut:
pip install fastapi uvicorn
Kemudian, buat fail bernama "main.py" dan tambah kod berikut:
from fastapi import FastAPI app = FastAPI() @app.get("/") def read_root(): return {"Hello": "World"}
Selepas menyimpan fail, lancarkan aplikasi FastAPI menggunakan arahan berikut:
uvicorn main:app --reload
Sekarang, aplikasi FastAPI kami sedang mendengar pada port tempatan 8000.
- Menguji proksi terbalik dan mengimbangi beban
Dengan mengakses "http://localhost", kita dapat melihat bahawa Nginx memajukan permintaan ke aplikasi FastAPI dan mengembalikan respons "Hello World".
Untuk menguji pengimbangan beban, kami boleh menyalin fail "main.py" dan memulakan aplikasi FastAPI pada port lain. Sebagai contoh, salin "main.py" ke "main2.py" dan mulakan aplikasi pada port 8001.
Kemudian, gunakan arahan berikut untuk memulakan aplikasi FastAPI kedua:
uvicorn main2:app --port 8001 --reload
Pada ketika ini, Nginx telah menyediakan pengimbangan beban dan permintaan akan diseimbangkan kepada dua aplikasi FastAPI.
Kesimpulan:
Dengan menggabungkan FastAPI dan Nginx, kami boleh melaksanakan fungsi proksi terbalik dan pengimbangan beban untuk meningkatkan prestasi dan kebolehpercayaan aplikasi web. Menggunakan ciri proksi terbalik Nginx, kami boleh menyembunyikan butiran pelayan bahagian belakang dan menyediakan keselamatan. Melalui fungsi pengimbangan beban, kami boleh mengimbangi beban merentas berbilang pelayan untuk meningkatkan prestasi dan kebolehpercayaan sistem. Saya harap artikel ini dapat membantu anda mempelajari cara menggunakan Nginx untuk proksi terbalik dan pengimbangan beban dalam FastAPI.
Atas ialah kandungan terperinci Cara menggunakan Nginx dengan FastAPI untuk proksi terbalik dan pengimbangan beban. 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

AI Hentai Generator
Menjana ai hentai secara percuma.

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



Menukar fail HTML kepada URL memerlukan pelayan web, yang melibatkan langkah berikut: Dapatkan pelayan web. Sediakan pelayan web. Muat naik fail HTML. Buat nama domain. Halakan permintaan.

Strategi pengimbangan beban adalah penting dalam rangka kerja Java untuk pengedaran permintaan yang cekap. Bergantung pada situasi konkurensi, strategi berbeza mempunyai prestasi berbeza: Kaedah pengundian: prestasi stabil di bawah konkurensi rendah. Kaedah undian berwajaran: Prestasi adalah serupa dengan kaedah pengundian di bawah konkurensi rendah. Bilangan kaedah sambungan paling sedikit: prestasi terbaik di bawah keselarasan tinggi. Kaedah rawak: mudah tetapi prestasi lemah. Hashing Konsisten: Mengimbangi beban pelayan. Digabungkan dengan kes praktikal, artikel ini menerangkan cara memilih strategi yang sesuai berdasarkan data prestasi untuk meningkatkan prestasi aplikasi dengan ketara.

Untuk berjaya menggunakan dan menyelenggara tapak web PHP, anda perlu melakukan langkah berikut: Pilih pelayan web (seperti Apache atau Nginx) Pasang PHP Cipta pangkalan data dan sambungkan PHP Muat naik kod ke pelayan Sediakan nama domain dan Pemantauan DNS penyelenggaraan tapak web langkah termasuk mengemas kini PHP dan pelayan web, dan membuat sandaran tapak web, memantau log ralat dan mengemas kini kandungan.

Tugas penting untuk pentadbir Linux adalah untuk melindungi pelayan daripada serangan atau akses haram. Secara lalai, sistem Linux disertakan dengan firewall yang dikonfigurasikan dengan baik, seperti iptables, Uncomplicated Firewall (UFW), ConfigServerSecurityFirewall (CSF), dsb., yang boleh menghalang pelbagai serangan. Mana-mana mesin yang disambungkan ke Internet adalah sasaran yang berpotensi untuk serangan berniat jahat. Terdapat alat yang dipanggil Fail2Ban yang boleh digunakan untuk mengurangkan akses haram pada pelayan. Apakah Fail2Ban? Fail2Ban[1] ialah perisian pencegahan pencerobohan yang melindungi pelayan daripada serangan kekerasan. Ia ditulis dalam bahasa pengaturcaraan Python

Hari ini, saya akan membawa anda memasang Nginx dalam persekitaran Linux Sistem Linux yang digunakan di sini ialah CentOS7.2 Sediakan alat pemasangan 1. Muat turun Nginx dari laman web rasmi Nginx. Versi yang digunakan di sini ialah: 1.13.6.2 Muat naik Nginx yang dimuat turun ke Linux Di sini, direktori /opt/nginx digunakan sebagai contoh. Jalankan "tar-zxvfnginx-1.13.6.tar.gz" untuk nyahmampat. 3. Tukar ke direktori /opt/nginx/nginx-1.13.6 dan jalankan ./configure untuk konfigurasi awal. Jika gesaan berikut muncul, ini bermakna PCRE tidak dipasang pada mesin, dan Nginx perlu melakukannya

Selepas yum memasang keepalived, konfigurasikan fail konfigurasi keepalived Ambil perhatian bahawa dalam fail konfigurasi keepalived bagi induk dan sandaran, nama kad rangkaian ialah nama kad rangkaian VIP yang tersedia Biasanya dalam ketersediaan tinggi. Persekitaran LAN Terdapat lebih banyak lagi, jadi VIP ini adalah IP intranet dalam segmen rangkaian yang sama dengan kedua-dua mesin. Jika digunakan dalam persekitaran rangkaian luaran, tidak kira sama ada ia berada pada segmen rangkaian yang sama, asalkan pelanggan boleh mengaksesnya. Hentikan perkhidmatan nginx dan mulakan perkhidmatan keepalived Anda akan melihat bahawa keepalived menarik perkhidmatan nginx untuk dimulakan.

Akses fail tapak WordPress adalah terhad: Menyelesaikan masalah sebab mengapa fail .txt tidak dapat diakses baru -baru ini. Sebilangan pengguna menghadapi masalah ketika mengkonfigurasi nama domain perniagaan program mini: � ...

Cara Melaksanakan Amalan Terbaik Keselamatan PHP PHP ialah salah satu bahasa pengaturcaraan web bahagian belakang paling popular yang digunakan untuk mencipta laman web dinamik dan interaktif. Walau bagaimanapun, kod PHP boleh terdedah kepada pelbagai kelemahan keselamatan. Melaksanakan amalan terbaik keselamatan adalah penting untuk melindungi aplikasi web anda daripada ancaman ini. Pengesahan input Pengesahan input ialah langkah pertama yang kritikal dalam mengesahkan input pengguna dan mencegah input berniat jahat seperti suntikan SQL. PHP menyediakan pelbagai fungsi pengesahan input, seperti filter_var() dan preg_match(). Contoh: $username=filter_var($_POST['username'],FILTER_SANIT
