まとめ
項目 | サーバーレスコンピューティング | マネージドサービス |
---|---|---|
インフラ管理 | 完全に不要(クラウドが管理) | ほぼ不要(部分的に管理) |
スケーリング | 完全自動 | 自動 or 設定次第 |
課金モデル | 従量課金制(コードが実行された分だけ課金) | 定額(リソース使用量ベース) |
適用範囲 | 関数単位のコード実行 | DB、Kubernetes、アプリ全体の管理 |
開発者の作業範囲 | コードのみ | 設定や最適化が必要 |
代表的なサービス |
Azure Functions , AWS Lambda
|
Azure SQL Database , Amazon RDS Azure Kubernetes Service , Amazon EKS
|
詳細
サーバーレスコンピューティングサービスとは
- サーバーレス(Serverless): 開発者がサーバーの管理を気にせずにコードを実行できるクラウドコンピューティングのモデル
- クラウドプロバイダーがインフラの管理、スケーリング、メンテナンスをすべて自動で行う
特徴
- 従量課金制(コードが実行された分だけ課金)
- 自動スケーリング(トラフィックに応じてリソースを自動調整)
- インフラ管理不要(開発者はコードに集中できる)
代表的なサービス
- AWS Lambda(Amazon Web Services)
- Azure Functions(Microsoft Azure)
- Google Cloud Functions(Google Cloud Platform)
マネージドサービスとは
- マネージドサービス(Managed Service): クラウドプロバイダーが運用・管理を代行するクラウドサービス
- ユーザーは基盤となるインフラを気にせず、設定や運用を簡単に行うことができる
特徴
- 運用・管理の負担軽減(セキュリティ、スケーリング、アップデートなどをプロバイダーが管理)
- 柔軟なスケーリング(多くの場合、自動でスケールアップ/ダウンが可能)
- 一部の管理は必要(設定や最適化の作業はユーザーが行う)
代表的なサービス
- Amazon RDS(マネージドデータベース)
- Google Kubernetes Engine(GKE)(Kubernetesの管理を簡素化)
- Azure App Service(アプリのデプロイ・運用を簡単に)
選定基準
サーバーレスを選ぶべきケース
- 短時間の処理(ETL、画像変換、APIバックエンドなど)
- インフラ管理を完全になくしたい場合
- トラフィックが変動するワークロード
マネージドサービスを選ぶべきケース
- データベースやKubernetesクラスタの運用を簡単にしたい
- 常時稼働が必要なアプリケーション(Webアプリ、エンタープライズシステムなど)
- ある程度の設定・最適化を行いたい場合