以下は、PaaS・SaaS・サーバーレスの「役割の違い」と「開発者視点の違い」をできるだけシンプルにまとめた説明です。
【まず結論】
【SaaS(Software as a Service)】
■ 何を提供する?
すでに完成しているアプリケーション。
■ 例
メールサービス、ドキュメント編集サービスなど
(あなたは画面を開いて使うだけ。アプリは全部クラウド上で動いている。)
■ 開発者の仕事
ほぼ無い。自分でアプリを作る必要がない。
■ 特徴
【PaaS(Platform as a Service)】
■ 何を提供する?
アプリを動かすプラットフォーム(基盤)
例:Webアプリケーションをデプロイすると動く環境一式(OS・ランタイム・DBなど)
■ 開発者の仕事
コードを書く
PaaSのプラットフォームにデプロイする
OS管理やサーバーパッチなどは不要
■ 特徴
アプリ開発は必要
サーバー構成を気にせずデプロイできる
スケールもある程度自動
【サーバーレス(Serverless)】
※代表例:FaaS(AWS Lambda など)
■ 何を提供する?
コードを動かす“瞬間”だけ実行環境を自動で提供
サーバーはあるが、ユーザーが意識しなくてよい。
■ 開発者の仕事
関数や小さな処理単位のコードを書く
トリガー(API、イベント)に紐づけて動かす
■ 特徴
【3つの違いを一言で比較すると】
| 種類 | ユーザーがやること | どこまでクラウド任せか | 主な用途 |
|---|
| SaaS | 使うだけ | アプリまで全部任せる | 既成サービス利用 |
| PaaS | コードを書き、デプロイする | OS・インフラ管理を任せる | Webアプリ運用 |
| サーバーレス | 関数(小さな処理)のコードを書く | 実行環境の全て任せる | 小規模API、イベント駆動 |
【開発者視点のイメージ】
この記事へのコメント