【ふぁーす】
FaaS とは?
最終更新:
💡 「必要なときだけ動く」コードの自動販売機
関数(Function)という小さな単位のコードを、クラウド上でイベントをきっかけに実行できるサービスの形。サーバーの用意や管理を利用者が意識せずに済む「サーバーレス」の代表的な形の1つ。
📌 このページのポイント
FaaSってサーバーレスと同じもの?
関数って普通のアプリと何が違うの?
関数が終わると、中のデータは消えちゃうの?
消える前提で作るのが正解だよ。AWS Lambdaの場合、処理が終わっても実行環境はしばらく保持されて、次の呼び出しで再利用されることがある。でも、いつまで残るかは保証されないんだ。だから関数は状態を持たない(ステートレス)ものとして作り、残したいデータはストレージやデータベースなど外部に保存するよ。
FaaSの実行時間制限って何分くらい?長い処理は無理なの?
サービスや設定によるけど、AWS Lambdaの標準的な関数は、1回の実行が最大900秒(15分)までだよ。既定値は3秒で、必要に応じて延ばす形なんだ。これを超える処理は、小さく分けるか、別のサービスを使うことになるね。
コールドスタートって何?
まとめ:ざっくりこれだけ覚えればOK!
「FaaS」って出てきたら「関数1個をクラウドに置いてイベントで呼び出す仕組みのことだな」と思えればだいたいOK!
📖 おまけ:英語の意味
「FaaS(Function as a Service)」 = 関数をサービスとして提供する
💬 「as a Service」シリーズの一員。IaaS・PaaS・SaaSと同じ命名パターンだよ
参考資料
- CNCF Serverless Whitepaper v1.0(cncf/wg-serverless, GitHub)
- Understanding the Lambda execution environment lifecycle(AWS Lambda Developer Guide)
- Configure Lambda function timeout(AWS Lambda Developer Guide)
- Configuring provisioned concurrency for a function(AWS Lambda Developer Guide)
- AWS Lambda Pricing(AWS)
- Azure Functions overview(Microsoft Learn)
- Functions overview(Cloud Run functions ドキュメント, Google Cloud)