Home Google用語集Serverless(サーバーレス)

Serverless(サーバーレス)

by B-cafe
0 comments

Serverless(サーバーレス)

サーバーレスとは、開発者がアプリケーションを構築・実行する際に、サーバーの管理を意識する必要がなくなるクラウドコンピューティングの実行モデルです。文字通り「サーバーがない」わけではなく、サーバーの準備、起動、スケール(拡張・縮小)、メンテナンスといった作業を、すべてクラウドサービスプロバイダー(Google Cloud、AWS、Azureなど)が肩代わりしてくれます。

例えるなら、タクシーに乗るようなものです。目的地を伝えれば、運転手が最適なルートで連れて行ってくれ、車の整備やガソリンの補充などを気にする必要はありません。サーバーレスも同様に、開発者はコードを書くことに集中でき、インフラのことはクラウドプロバイダーに任せられます。



サーバーレスの主な特徴とメリット

  • サーバー管理からの解放 😌: 開発者はサーバーのOSのパッチ適用、セキュリティ設定、キャパシティプランニング(サーバーの台数やスペックの決定)など、面倒な作業から解放されます。これにより、アプリケーション開発に集中でき、開発スピードが向上します。

  • 従量課金制(イベント駆動型)💰: コードが実行された時だけ料金が発生します。アイドル状態(何も処理していない時)には費用がかからないため、使った分だけ支払う非常に効率的なコストモデルです。トラフィックの変動が大きいサービスに適しています。

  • 自動スケーリング 🚀: アクセスが急増しても、クラウドプロバイダーが自動的に必要なリソースを瞬時に割り当ててくれます。これにより、サービスの停止やパフォーマンス低下のリスクを大幅に軽減できます。手動でサーバーを増やす必要がありません。

  • 高い可用性 💪: プロバイダーがインフラの冗長化や障害対策を行っているため、個々のサーバーの故障がサービス全体に影響を及ぼしにくいです。

  • 迅速なデプロイ ⚡: コードをアップロードするだけで、すぐにアプリケーションをデプロイできます。インフラの構築や設定に時間をかける必要がありません。


サーバーレスのユースケース(活用例)

サーバーレスは、以下のような様々な用途で利用されています。

  • Webアプリケーションのバックエンド: API(アプリケーション連携の窓口)として機能し、ユーザーからのリクエストに応じて処理を実行します。

  • データ処理: ファイルがアップロードされた際に自動的に処理を実行したり、データベースの更新をトリガーに特定の処理を行ったりするのに使われます。

  • チャットボット: ユーザーからのメッセージに応答するロジックを実行します。

  • IoT(モノのインターネット): デバイスからのデータを受信し、処理するバックエンドとして機能します。

  • モバイルアプリケーションのバックエンド: アプリからのリクエストに応じて認証やデータ保存などの処理を実行します。


Google Cloud の主なサーバーレスサービス

Google Cloudでは、以下のような様々なサーバーレスサービスが提供されています。

  • Cloud Functions: イベント駆動型のサーバーレス実行環境。特定のイベント(HTTPリクエスト、ファイルアップロード、データベース更新など)をトリガーにコードを実行します。

  • Cloud Run: コンテナ化されたアプリケーションを実行できるサーバーレスプラットフォーム。より柔軟な言語やライブラリの利用が可能です。

  • App Engine: Webアプリケーションやモバイルバックエンド向けのフルマネージドなプラットフォーム。標準環境とフレキシブル環境があります。

  • BigQuery: サーバーレスなデータウェアハウス。大規模なデータ分析を容易に行えます。

  • Firestore/Datastore: サーバーレスなNoSQLデータベース。リアルタイムアプリケーションやモバイルアプリケーションに適しています。



関連リンク

You may also like