ホームページ >バックエンド開発 >Python チュートリアル >FastAPI アプリケーションでバックグラウンド タスクを実行するにはどうすればよいですか?
FastAPI でのバックグラウンド スレッドの実行
FastAPI では、API 機能に関係のない操作のためにバックグラウンドでのタスクの実行が必要になる場合があります。これを実現するには、開発者は要件に基づいてさまざまなアプローチを検討する必要があります。
オプション 1: Uvicorn 実行前のスレッド化
uvicorn.run を呼び出す前にスレッドを開始すると、スレッドは、uvicorn.run が並行して実行されているときに実行されます。このアプローチにより、API リクエストの処理を担当するスレッドのブロックが防止されます。
オプション 2: イベント スケジューラ
sched モジュールによって提供されるスケジューラなどを使用して、繰り返しイベントをスケジュールできます。 。このアプローチにより、タスクを一定の間隔で実行できます。
オプション 3: 非同期 Def 関数とイベント ループの統合
非同期 def 関数をイベントに追加できます。 asyncio.create_task を使用してループします。このメソッドを使用すると、タスクを API 処理タスクと同時に実行できます。
追加の考慮事項
以上がFastAPI アプリケーションでバックグラウンド タスクを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。