FaaS
処理を関数として配置し、ファイルの追加やHTTPリクエストなどのイベントをきっかけに実行するクラウドサービスの形態。サーバの準備やOSの管理を事業者に任せられる。
イマシルちゃんの解説
写真がアップロードされたら、小さいサイズの画像を自動で作りたい。そんな処理を動かす方法の一つが、FaaSというクラウドサービスだよ。
利用者は、一まとまりの処理である関数を登録して、何をきっかけに動かすか設定するんだ。
写真の追加などのイベントが発生すると、事業者が用意した場所でその処理が実行されるよ。
処理を動かすサーバは実際にあるけれど、準備やOSの更新は事業者に任せられるんだ。
利用者はサーバの保守を抱え込まずに、必要な処理を作ることに集中しやすくなるんだよ。
この解説はわかりやすかったですか?
より深い解説
定義
FaaS(Function as a Service)は、利用者が作成したプログラムを、関数の単位でクラウド事業者の実行環境に配置し、HTTPのリクエストやファイルのアップロードなどのイベントをきっかけに実行させるサービスである。サーバの用意、OSの管理、負荷に応じた台数の増減(スケーリング)は、クラウド事業者が自動で行う。サーバそのものがなくなるわけではないが、利用者からは見えないため、サーバレスと呼ばれる。
代表的なサービスに、AWS Lambda、Azure Functions、Google Cloud Functions(Cloud Run functions)などがある。
特徴
| 特徴 | 内容 |
|---|---|
| サーバの管理が不要 | OSの更新、台数の調整などを意識しなくてよい |
| イベント駆動 | 処理が必要になったときだけ起動する |
| 自動スケーリング | 要求が増えれば、自動的に並列に実行される |
| 従量課金 | 実行した回数と時間の分だけ料金がかかる。何も実行しない時間は課金されない |
注意点
| 注意点 | 内容 |
|---|---|
| コールドスタート | しばらく使われていない関数を起動するとき、実行環境の準備に時間がかかり、応答が遅れることがある |
| 実行時間の制限 | 1回の実行時間に上限があり、長時間の処理には向かない |
| 状態を持たない | 関数の実行ごとに環境が変わるため、データはデータベースやストレージに保存する |
| ベンダーロックイン | 事業者ごとの仕組みに依存しやすい |
クラウドサービスの形態の比較
| 形態 | 利用者が使うもの | 利用者が管理する範囲 |
|---|---|---|
| IaaS | 演算機能、ストレージ、ネットワークなどの基盤 | OS、ミドルウェア、アプリケーション |
| PaaS | アプリケーションを動かすためのプラットフォーム(OS、ミドルウェア) | アプリケーション |
| FaaS | 関数の実行環境 | 関数(プログラムの処理) |
| SaaS | 事業者が提供するアプリケーション | 設定、データ |
| DaaS | 仮想化したデスクトップ環境 | デスクトップの利用 |
| 説明 | 当てはまる形態 |
|---|---|
| 演算機能、ストレージ、ネットワークなどをクラウドに配置して使う | IaaS |
| 仮想化したデスクトップ環境を遠隔地の端末から使う | DaaS |
| クラウド事業者が提供するアプリケーションを使う | SaaS |
| サーバの管理を意識せず、プログラムの実行環境を使う | FaaS |
実際の試験ではここに出る!全1問
ネットワークスペシャリスト
- 午前Ⅱ