サーバレスコンピューティングはパブリッククラウドでアプリケーションを実行するコストを削減できる。ただしコスト削減をはじめとする各種のメリットを享受するには、適切なスキルセットが必要だ。
「サーバレスコンピューティング」によって、企業はクラウドアプリケーションをより細かい単位で設計し、導入できる。従来のモノリシックなアプリケーションとは異なり、サーバレスアプリケーションはワークロードを複数の関数に分割し、トリガーとなるイベントに呼び出された場合にのみ実行する。
名前に“サーバレス”とあるが、サーバレスコンピューティングはサーバが全く不要なわけではなく、関数をロードして実行するときにのみ使用する。こうしてリソースの使用を最小限に抑えることで、パブリッククラウドの利用料金を抑えようというわけだ。
主要なパブリッククラウド事業者は現在、何かしらの形でサーバレスコンピューティングを提供している。Amazon Web Services(AWS)の「AWS Lambda」、Microsoftの「Microsoft Azure Functions」、Googleの「Google Cloud Functions」などだ。本稿ではサーバレスコンピューティングとは何かを説明し、この最新技術を最大限に活用するための留意点を紹介する。
サーバレスコンピューティングは、アプリケーションの設計と管理方法が従来とは根本的に異なる。そのため、この技術を最大限に活用するには、開発者にもクラウド管理者にも軌道修正が必要だ。
開発者にとって最大の違いは、アプリケーションの構造だ。従来型のモノリシックなアプリケーションは多くの場合、変数を介してデータをやりとりするルーチンに依存する。この方法を進化させたのがマイクロサービスだ。マイクロサービスはソフトウェアを小さな機能要素に分割した上で、機能要素を個別にスケーリングし、APIを介してデータをやりとりする。これをさらに極端にしたのがサーバレスコンピューティングだ。サーバレスコンピューティングはソフトウェアの機能を個別の関数に分割し、必要なときにだけ起動する。こうして核となるアプリケーションを小さくすることで、クラウドコンピューティングのインスタンスを小さくし、コストを抑えることが可能だ。
サーバレスコンピューティングの影響はクラウド管理者にも及ぶ。クラウド管理者は例えば、何十もの関数のアベイラビリティとパフォーマンスを監視しなければならない。各関数について、パフォーマンスを監視し、トラブルシューティングを実施し、利用状況とコストを追跡して、そうしたコストをアプリケーション全体のコストとして集計する必要がある。関数の分析と評価には、Azure Functionsの「モニター」タブなど、パブリッククラウド事業者が提供する監視機能を利用できる。
さらにクラウド管理者は、継続的な管理データを開発者と共有するためのメカニズムも構築しなければならない。こうすることで、サーバレスアプリケーションを継続的に改善し、パフォーマンスとコストの最適化を図ることができる。
サーバレスコンピューティングが最も適しているのは、多くのリソースを必要とせず、依存関係が最小限で、実行に長時間を要さない、小さくてステートレスな関数だ。関数はできる限り素早く、始動、実行、終了する必要がある。実行に大量のリソースや長い時間を必要とするタスクは、従来型の仮想マシン(VM)やコンテナ導入の方が向いている。
関数は通常、リソースと同時処理数と導入規模に制限がある。クラウド事業者はインスタンスを迅速にスピンアップ(起動処理)し、関数のコードをロードして実行するためのリソースを提供する必要があるからだ。例えば、AWS Lambdaのリソース制限は現在、一時ディスク容量が512MB、ファイル記述子の数が1024個、プロセスとスレッドの数は合わせて1024個、リクエスト当たりの最大実行時間は300秒となっている。
サーバレスコンピューティングの強みの1つは、パブリッククラウドにおいてオンデマンドで仮想マシン(VM)インスタンスを使う場合と比べて、アプリケーションの設計によってはコストを削減できる点だ。コスト削減の規模はアプリケーションの性質によって異なる他、アプリケーションがどの程度イベント駆動型の関数として設計、導入されているかや、関数を呼び出す頻度によっても異なる。イベントが発生したとき以外、アプリケーションの大半がアイドル状態にあるようなら、コストの削減を見込める。
ただしパブリッククラウドにおいてオンデマンドでVMインスタンスを使用する場合と比べて、コストを常に削減できるわけではない。無料層を除けば、関数の呼び出しは常に料金が発生する。関数ベースのアプリケーションのコストはおおよそ各関数のコストの合計となる。各関数のコストは基本的には、呼び出し回数に呼び出し1回当たりのコストを掛けた数字だ。
例えば50~100個程度の関数で構成されるサーバレスアプリケーションを、数万あるいは数十万という規模のモバイルユーザーベースが利用するとする。このような場合、クラウドの利用料金が請求されるころには、関数の呼び出し回数が膨大な数にふくれ上がっている可能性もある。そうなれば、従来型のアーキテクチャで設計した場合よりもコストがかさむ。ここでの問題は、一部には利用予測が不明確なことにある。大半の開発者は、関数がどのくらいの頻度で呼び出されることになるかを把握していない。そのためコスト分析が難しくなる。
サーバレスアプリケーションのコストを予測するには、関数の使用規模とユーザーベースの規模を慎重に評価する必要がある。アプリケーションの設計の違いが運転コストにどのような影響を及ぼすかについての検討も重要だ。アプリケーションの設計に変更を加え、一部の関数の多用を回避することで、コストを減らせる場合もある。
Copyright © ITmedia, Inc. All Rights Reserved.
契約業務の効率化やコストの削減といった効果が期待できることから、多くの企業で「電子署名」の導入が進んでいる。一方で、訴訟問題へと発展した際に証拠として使えるのかといった疑問を抱き、導入を踏みとどまるケースもあるようだ。
半導体ベンダーBroadcomは仮想化ベンダーVMwareを買収してから、VMware製品の永久ライセンスを廃止した。その永久ライセンスを継続する非公認の方法とは。
クラウドファーストの流れが加速する中、無計画に構築されたハイブリッドクラウドの弊害が多くの企業を悩ませている。ITオペレーションの最適化を図るためには、次世代のハイブリッドクラウドへのモダン化を進めることが有効だ。
ワークロードを最適な環境に配置できる手法として注目され、多くの企業が採用しているハイブリッドクラウド。しかし、パフォーマンス、法令順守、コストなどが課題となり、ハイブリッドクラウド環境の最適化を難しくしている。
システム基盤をオンプレミスで運用するか、データセンターやクラウドで運用するかは、業種によって大きく異なる。調査結果を基に、活用の実態を探るとともに、最適なクラウドサービスを考察する。
お知らせ
米国TechTarget Inc.とInforma Techデジタル事業が業務提携したことが発表されました。TechTargetジャパンは従来どおり、アイティメディア(株)が運営を継続します。これからも日本企業のIT選定に役立つ情報を提供してまいります。
「ECプラットフォーム」売れ筋TOP10(2025年4月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。
「パーソナライゼーション」&「A/Bテスト」ツール売れ筋TOP5(2025年4月)
今週は、パーソナライゼーション製品と「A/Bテスト」ツールの国内売れ筋各TOP5を紹介し...
Cookieを超える「マルチリターゲティング」 広告効果に及ぼす影響は?
Cookieレスの課題解決の鍵となる「マルチリターゲティング」を題材に、AI技術によるROI向...