FastAPIでPythonのマイクロサービスを構築する

FastAPI

FastAPIでPythonのマイクロサービスを構築する。
設計コンセプトからインフラまで、安全でスケーラブル、かつ構造化されたPythonマイクロサービスを構築する。

いい感じの日本語の書籍がなかったので、洋書を買ってみた。
コレは!と思った箇所があれば翻訳・要約して記事にできたらと思います。

見出し

第1章 「初心者向けのFastAPIのセットアップ」では、コアモジュールクラスとデコレータを使用してFastAPIエンドポイントを作成する方法と、フレームワークが受信するAPIリクエストと送信する応答を管理する方法を紹介します。

第2章 「コア機能の探索」では、FastAPIの非同期エンドポイント、例外処理メカニズム、バックグラウンドプロセス、プロジェクト編成用のAPI Router、組み込みJSONエンコーダー、およびFastAPIのJSONレスポンスを紹介します。

第3章 「依存性注入の調査」では、FastAPIがDepends()ディレクティブとサードパーティの拡張モジュールを使用してインスタンスとプロジェクト構造を管理するために利用する依存性注入(DI)パターンについて説明します。

第4章 「マイクロサービスアプリケーションの構築」では、分解、プロパティ構成、ログ記録、ドメインモデリング戦略など、マイクロサービスの構築をサポートする原則と設計パターンについて説明します。

第5章 「リレーショナルデータベースへの接続」では、FastAPIとシームレスに統合してPostgreSQLデータベースを使用してデータを永続化および管理できる Python Object Relational Mappers (ORMs) に焦点を当てています。

第6章 「非リレーショナルデータベースの使用」では、FastAPIアプリケーションをMongoDBサーバーに接続できる一般的な Python Object Document Mapper (ODMs) を含む、PyMongoエンジンとMotorエンジンを紹介します。

第7章 「REST APIの保護」では、FastAPIの組み込みセキュリティモジュールクラスに焦点を当て、JWT、Keycloak、Okta、Auth0などのサードパーティツールと、アプリケーションを保護するためのさまざまなセキュリティスキームを実装するためにそれらを適用する方法について説明します。

第8章 「コルーチン、イベント、およびメッセージ駆動型トランザクションの作成」では、コルーチンの使用、asyncio環境、Celeryを使用した非同期バックグラウンドプロセス、RabbitMQとApache Kafkaを使用した非同期メッセージング、SSE、WebSocket、非同期イベントなど、FastAPIの非同期な側面の詳細に焦点を当てています。

第9章 「その他の高度な機能の利用」には、さまざまな応答タイプのサポート、ミドルウェアのカスタマイズ、要求と応答、他のJSONエンコーダーの適用、CORSブラウザーポリシーのバイパスなど、FastAPIが提供できるその他の機能が含まれています。

第10章 「数値、記号、およびグラフィカルの問題の解決」では、FastAPIとnumpy、pandas、matplotlib、sympy、およびscipyモジュールとの統合に焦点を当てて、数学的および統計的問題を解決するために数値および記号計算を実行できるAPIサービスを実装します。

第11章 「その他のマイクロサービス機能の追加」では、実行時のAPIエンドポイントのプロパティの監視とチェック、OpenTracing、クライアント側のサービス検出、リポジトリモジュールの管理、デプロイ、FlaskおよびDjangoアプリを使用したモノリポジトリアーキテクチャの作成など、その他のアーキテクチャ上の懸念事項について説明します。

コメント