1. Pythonの非同期処理とは
Pythonの非同期処理とは、時間のかかる処理を待っている間に、他の処理を先に進めるプログラミングの方法です。待ち時間がある処理を効率よく進めるときに特に効果を発揮します。
たとえば、次のような場合に、非同期処理を使うと効果を発揮します。
(1) Web APIの並列呼び出し
例:天気情報APIや路線情報API等に同時にリクエストを送りたいとき。
・APIの応答を待っている間は、CPUをほとんど使わないので、他のリクエスト処理ができる。
・非同期でリクエストするときは、requestsの代わりにaiohttpを使う。
(2) チャットアプリやWebSocket通信(リアルタイム処理)
例:Webチャット、オンラインゲームなどで、常時接続しながらメッセージの送受信を行う。
・接続は維持しつつ、メッセージが来るのを「待つ」必要があり、同期処理だと待っている間、他のことができなくなる。
(3) ファイルやデータベースへの非同期アクセス
例:数千件のログファイルを読み込みながら、バックグラウンドで解析・保存する。