Rumah pembangunan bahagian belakang Tutorial Python Gunakan rangka kerja FastAPI untuk membina aplikasi tugas tak segerak yang cekap

Gunakan rangka kerja FastAPI untuk membina aplikasi tugas tak segerak yang cekap

Sep 27, 2023 am 10:06 AM
fastapi Tugas Asynchronous Bina dengan cekap

Gunakan rangka kerja FastAPI untuk membina aplikasi tugas tak segerak yang cekap

Gunakan rangka kerja FastAPI untuk membina aplikasi tugas tak segerak yang cekap

Pengenalan:
Dalam aplikasi web moden, tugas tak segerak adalah keperluan yang sangat biasa, seperti menghantar e-mel, menjana laporan, memanggil API pihak ketiga, dsb. Kaedah pemprosesan penyegerakan tradisional akan menyekat utas utama, menyebabkan pengguna menunggu terlalu lama. Untuk meningkatkan prestasi aplikasi dan pengalaman pengguna, kami boleh menggunakan tugas tak segerak untuk mengendalikan operasi yang memakan masa ini. Dalam artikel ini, kami akan memperkenalkan cara menggunakan rangka kerja FastAPI untuk membina aplikasi tugas tak segerak yang cekap dan menyediakan contoh kod khusus.

1. Pengenalan kepada rangka kerja FastAPI
FastAPI ialah rangka kerja web moden berdasarkan Python, yang menggabungkan prestasi pantas dan tinggi. FastAPI menggunakan pemprosesan permintaan tak segerak dan menggunakan tugas tak segerak untuk meningkatkan kelajuan tindak balas aplikasi dan daya pemprosesan. Pada masa yang sama, FastAPI juga menyediakan fungsi seperti menjana dokumen API secara automatik, mengesahkan parameter permintaan, memproses permintaan dan respons, dsb., yang sangat memudahkan kerja pembangunan.

2. Cipta aplikasi tugas tak segerak

  1. Pasang FastAPI dan perpustakaan sokongan tugas tak segerak
    Pertama, kami perlu memasang FastAPI dan perpustakaan sokongan tugas tak segerak. Anda boleh menggunakan arahan berikut:
pip install fastapi
pip install aiohttp
Salin selepas log masuk
  1. Tulis fungsi pemprosesan tugas tak segerak
    Seterusnya, kita perlu menulis fungsi pemprosesan tugas tak segerak. Fungsi ini akan mengendalikan logik tugas tak segerak khusus yang kami takrifkan, yang boleh menghantar e-mel, menjana laporan, dsb.

Kod sampel adalah seperti berikut:

import asyncio

async def send_email(email: str, content: str):
    # 模拟发送邮件的异步操作
    await asyncio.sleep(3)
    print(f"向邮箱 {email} 发送邮件:{content}")
Salin selepas log masuk
  1. Buat aplikasi FastAPI
    Kemudian, kami mencipta aplikasi FastAPI dan menambah antara muka pemprosesan tugas tak segerak.

Kod sampel adalah seperti berikut:

from fastapi import FastAPI
import asyncio

app = FastAPI()

@app.post("/send-email")
async def handle_send_email(email: str, content: str):
    # 创建一个异步任务
    task = asyncio.create_task(send_email(email, content))
    return {"message": "异步任务已启动"}
Salin selepas log masuk

Dalam kod di atas, kami menggunakan penghias @app.post untuk menentukan laluan yang menerima permintaan POST Apabila permintaan tiba, handle_send_email akan dilaksanakan Fungsi. Dalam fungsi, kami mencipta tugas tak segerak tugas dan mengembalikan mesej gesaan. @app.post装饰器定义一个接受POST请求的路由,当请求到达时,将会执行handle_send_email函数。在函数中,我们创建一个异步任务task,并返回一个提示信息。

  1. 运行FastAPI应用
    最后,我们使用以下命令来运行FastAPI应用:
uvicorn main:app --reload
Salin selepas log masuk

其中,main为保存FastAPI应用的Python文件,app为FastAPI应用的实例对象。--reload选项表示当代码发生变化时,应用自动重载。

三、测试异步任务应用
现在我们可以使用任意的HTTP工具(如curl、Postman等)向/send-email

    Jalankan aplikasi FastAPI

    Akhir sekali, kami menggunakan arahan berikut untuk menjalankan aplikasi FastAPI:

    POST /send-email HTTP/1.1
    Host: localhost:8000
    Content-Type: application/json
    
    {
        "email": "example@example.com",
        "content": "Hello, World!"
    }
    Salin selepas log masuk
    Antaranya, utama ialah fail Python yang menyimpan Aplikasi FastAPI, app ialah objek contoh aplikasi FastAPI. Pilihan --reload menunjukkan bahawa aplikasi akan memuat semula secara automatik apabila kod berubah.


    3 Uji aplikasi tugas tak segerak

    Kini kami boleh menggunakan mana-mana alat HTTP (seperti curl, Posman, dll.) untuk menghantar permintaan POST ke antara muka /send-email untuk menguji tak segerak. permohonan tugas.


    Permintaan sampel adalah seperti berikut:

    rrreee🎜Selepas menerima permintaan, aplikasi akan mencipta tugas tak segerak untuk mengendalikan logik menghantar e-mel dan membalas respons dengan segera. 🎜🎜Kesimpulan: 🎜Sangat mudah untuk membina aplikasi tugas tak segerak yang cekap menggunakan rangka kerja FastAPI. Melalui pemprosesan tugas tak segerak, kami boleh meningkatkan prestasi aplikasi dan pengalaman pengguna. Pada masa yang sama, rangka kerja FastAPI menyediakan penghalaan yang mudah dan fungsi pemprosesan permintaan, menjadikan kerja pembangunan aplikasi lebih mudah. 🎜🎜Ringkasan: 🎜Artikel ini memperkenalkan cara menggunakan rangka kerja FastAPI untuk membina aplikasi tugas tak segerak yang cekap. Melalui contoh kod khusus, kami menunjukkan cara untuk mencipta fungsi pemprosesan tugas tak segerak, mencipta aplikasi FastAPI dan melaksanakan antara muka tugas tak segerak untuk menghantar e-mel. Saya harap artikel ini dapat membantu pembaca mula menggunakan rangka kerja FastAPI dengan cepat dan membina aplikasi tugas tak segerak yang cekap. 🎜

    Atas ialah kandungan terperinci Gunakan rangka kerja FastAPI untuk membina aplikasi tugas tak segerak yang cekap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

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

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menggunakan Nginx dengan FastAPI untuk proksi terbalik dan pengimbangan beban Cara menggunakan Nginx dengan FastAPI untuk proksi terbalik dan pengimbangan beban Aug 01, 2023 am 09:44 AM

Cara menggunakan Nginx dengan FastAPI untuk proksi terbalik dan pengimbangan beban Pengenalan: FastAPI dan Nginx ialah dua alat 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 penjanaan terbalik

Bagaimana untuk mencapai keselarasan tinggi dan pengimbangan beban permintaan dalam FastAPI Bagaimana untuk mencapai keselarasan tinggi dan pengimbangan beban permintaan dalam FastAPI Jul 31, 2023 pm 01:50 PM

Bagaimana untuk mencapai keselarasan tinggi dan pengimbangan beban permintaan dalam FastAPI Pengenalan: Dengan pembangunan Internet, keselarasan tinggi aplikasi web telah menjadi masalah biasa. Apabila mengendalikan sejumlah besar permintaan, kami perlu menggunakan rangka kerja dan teknologi yang cekap untuk memastikan prestasi sistem dan kebolehskalaan. FastAPI ialah rangka kerja Python berprestasi tinggi yang boleh membantu kami mencapai keselarasan tinggi dan pengimbangan beban. Artikel ini akan memperkenalkan cara menggunakan FastAPI untuk mencapai keselarasan tinggi dan pengimbangan beban permintaan. Kami akan menggunakan Python3.7

Cara menggunakan pemberitahuan tolak dalam FastAPI untuk mengemas kini data dalam masa nyata Cara menggunakan pemberitahuan tolak dalam FastAPI untuk mengemas kini data dalam masa nyata Jul 29, 2023 pm 06:09 PM

Cara menggunakan pemberitahuan tolak dalam FastAPI untuk mengemas kini data dalam masa nyata Pengenalan: Dengan pembangunan berterusan Internet, kemas kini data masa nyata menjadi semakin penting. Contohnya, dalam senario aplikasi seperti perdagangan masa nyata, pemantauan masa nyata dan permainan masa nyata, kami perlu mengemas kini data tepat pada masanya untuk memberikan maklumat yang paling tepat dan pengalaman pengguna yang terbaik. FastAPI ialah rangka kerja web berasaskan Python moden yang menyediakan cara yang mudah dan cekap untuk membina aplikasi web berprestasi tinggi. Artikel ini akan memperkenalkan cara menggunakan FastAPI untuk dilaksanakan

Cara melaksanakan permintaan perlindungan keselamatan dan pembaikan kerentanan dalam FastAPI Cara melaksanakan permintaan perlindungan keselamatan dan pembaikan kerentanan dalam FastAPI Jul 29, 2023 am 10:21 AM

Cara melaksanakan permintaan perlindungan keselamatan dan pembaikan kelemahan dalam FastAPI Pengenalan: Dalam proses membangunkan aplikasi web, adalah sangat penting untuk memastikan keselamatan aplikasi. FastAPI ialah rangka kerja web Python yang pantas (berprestasi tinggi), mudah digunakan, dengan penjanaan dokumentasi automatik. Artikel ini akan memperkenalkan cara melaksanakan permintaan perlindungan keselamatan dan pembaikan kerentanan dalam FastAPI. 1. Gunakan protokol HTTP selamat Menggunakan protokol HTTPS adalah asas untuk memastikan keselamatan komunikasi aplikasi. FastAPI menyediakan

Bagaimana untuk melaksanakan muat naik dan pemprosesan fail dalam FastAPI Bagaimana untuk melaksanakan muat naik dan pemprosesan fail dalam FastAPI Jul 28, 2023 pm 03:01 PM

Cara melaksanakan muat naik dan pemprosesan fail dalam FastAPI FastAPI ialah rangka kerja web berprestasi tinggi moden yang mudah digunakan dan berkuasa Ia menyediakan sokongan asli untuk muat naik dan pemprosesan fail. Dalam artikel ini, kami akan mempelajari cara melaksanakan fungsi muat naik dan pemprosesan fail dalam rangka kerja FastAPI dan menyediakan contoh kod untuk menggambarkan langkah pelaksanaan tertentu. Pertama, kita perlu mengimport perpustakaan dan modul yang diperlukan: fromfastapiimportFastAPI,UploadF

Bagaimana untuk melaksanakan failover dan cuba semula permintaan dalam FastAPI Bagaimana untuk melaksanakan failover dan cuba semula permintaan dalam FastAPI Jul 28, 2023 pm 01:33 PM

Cara melaksanakan pemulihan kegagalan permintaan dan cuba semula dalam FastAPI Pengenalan: Dalam membangunkan aplikasi web, kita sering perlu berkomunikasi dengan perkhidmatan lain. Walau bagaimanapun, perkhidmatan ini mungkin mengalami kegagalan, seperti gangguan rangkaian sementara atau tamat masa respons. Untuk memastikan aplikasi kami boleh dipercayai, kami perlu pulih daripada kegagalan dan cuba semula apabila perlu. Dalam artikel ini, kita akan mempelajari cara melaksanakan failover dan cuba semula permintaan dalam FastAPI. FastAPI ialah aplikasi web moden berdasarkan Python

Pembangunan Laravel: Bagaimana untuk menggunakan Laravel Queue untuk mengendalikan tugas tak segerak? Pembangunan Laravel: Bagaimana untuk menggunakan Laravel Queue untuk mengendalikan tugas tak segerak? Jun 13, 2023 pm 08:32 PM

Apabila aplikasi menjadi lebih kompleks, pengendalian dan mengurus sejumlah besar data dan proses adalah satu cabaran. Untuk menangani situasi ini, Laravel menyediakan pengguna dengan alat yang sangat berkuasa, Laravel Queue (Queue). Ia membolehkan pembangun menjalankan tugas seperti menghantar e-mel, menjana PDF, mengendalikan pemangkasan imej, dsb. di latar belakang tanpa sebarang kesan pada antara muka pengguna. Dalam artikel ini, kami akan mendalami cara menggunakan baris gilir Laravel. Apakah giliran LaravelQueue

Cara menggunakan caching dalam FastAPI untuk mempercepatkan respons Cara menggunakan caching dalam FastAPI untuk mempercepatkan respons Jul 28, 2023 pm 08:17 PM

Cara menggunakan caching dalam FastAPI untuk mempercepatkan respons Pengenalan: Dalam pembangunan web moden, prestasi adalah kebimbangan penting. Jika aplikasi kami tidak dapat bertindak balas terhadap permintaan pelanggan dengan cepat, ia boleh menyebabkan penurunan dalam pengalaman pengguna atau bahkan pergolakan pengguna. Menggunakan cache adalah salah satu kaedah biasa untuk meningkatkan prestasi aplikasi web. Dalam artikel ini, kami akan meneroka cara menggunakan caching untuk mempercepatkan kelajuan tindak balas rangka kerja FastAPI dan menyediakan contoh kod yang sepadan. 1. Apakah cache? Cache ialah cache yang akan diakses dengan kerap

See all articles