概要
この Issue では、Azure Functions と Cloudflare Workers を組み合わせたサーバーレス API アーキテクチャの実装方針をまとめます。
軽量な API や単純な処理は Cloudflare Workers で処理し、
複雑な処理やデータベースを伴う API は Azure Functions で処理する構成を採用します。
1. アーキテクチャ設計
(1) 役割分担
| サービス |
目的 |
実装内容 |
| Azure Functions |
サーバーレス API |
- データベース連携 (PostgreSQL) - AI/ML の処理 (LangChain, Gemini) - ヘビーなバックエンドロジック |
| Cloudflare Workers |
軽量 API / 事前処理 |
- キャッシュ処理 - 軽量なデータ変換 - フロントエンド向け API の最適化 |
2. 実装方針
(1) Cloudflare Workers
- 軽量な API (ヘッダー処理、データ変換、キャッシュなど) を担当
- データストレージ不要
- エッジサーバーで低遅延に実行
- 例:
/health-check API, /geo-ip API など
実装例 (workers/index.ts)
export default {
async fetch(request: Request): Promise<Response> {
return new Response(JSON.stringify({ message: "Cloudflare Workers API" }), {
headers: { "Content-Type": "application/json" },
});
},
};
概要
この Issue では、Azure Functions と Cloudflare Workers を組み合わせたサーバーレス API アーキテクチャの実装方針をまとめます。
軽量な API や単純な処理は Cloudflare Workers で処理し、
複雑な処理やデータベースを伴う API は Azure Functions で処理する構成を採用します。
1. アーキテクチャ設計
(1) 役割分担
- AI/ML の処理 (LangChain, Gemini)
- ヘビーなバックエンドロジック
- 軽量なデータ変換
- フロントエンド向け API の最適化
2. 実装方針
(1) Cloudflare Workers
/health-checkAPI,/geo-ipAPI など実装例 (workers/index.ts)