はじめに
サーバレスコンピューティングとクラウドコンピューティング、似たような意味で使われるため意味が混乱しがちです。
本記事では、クラウドコンピューティングに対して「サーバレスコンピューティング」とは何を指しているのか?について分かりやすく解説しました。
本記事ではクラウド用語であるIaaS等を利用しますが今一度整理したい方は以下の記事を確認ください。
サーバレスとは?
サーバレスコンピューティングの特徴は一言で言えば「イベントドリブンサービス」である点にあります。要は、必要な場合にのみ機能を実行するサービスです。
もちろんそれらを提供するサーバやストレージはプロバイダーが責任を持つので、クラウドコンピューティングの一つと捉えることができます。
Serverless Computing ⊂ Cloud Computing
イベントドリブンなので呼び出しがないと実行されず、実行されていない間は料金が発生しません。
ここがサーバレスコンピューティングの大きな特徴と言えます。
というのも「サーバレスコンピューティングはインフラが利用者から隠されている」といった観点はGmailのようなSaaSにおいても実現ができている特徴だからです。
これらはクラウドプロバイダーにて提供されていて、例えばGoogleCloudPlatformであれば「Google Cloud Functions」として
Cloud Functions の料金は、関数の実行期間、関数の呼び出し回数、関数に対してプロビジョニングされたリソースの数に応じて決まります。使用している関数によって送信ネットワーク リクエストが作成された場合は、データ転送料金も加算されます。
と記載されるように、呼び出し料金の単価と呼び出し回数で費用が算出できるのが特徴です。
つまり、IaaSやPaaSにて同様の機能を展開して運用するよりも掛かる料金が少なくなるのが強みです。
終わりに
サーバレスとクラウドの違いですが、そもそもサーバレスはクラウドの一部であり、「イベントトリガーで機能が提供されて料金も呼び出し回数で決定する」するのがサーバレスコンピューティングの特徴です。費用も安めです。
意味が広い用語ですが、AWSにおけるLamba,GCPにおけるCloud Functionsと覚えておけば大きな認識のずれはないと思います。
以上、サーバレスとクラウドに関する入門記事でした。