コストだけでは比較できない
AWS、Azure、Google サーバレスは性能と移植性で評価する
サーバレスプラットフォームはコスト削減の効果が期待できる。だが、候補となるベンダーを企業のIT部門で評価する際に留意すべき要素は、コスト面だけではない。
サーバレスプラットフォームには、Amazon Web Services(AWS)の「AWS Lambda」、Microsoftの「Azure Functions」、Googleの「Cloud Functions」などがある。こうしたサーバレスプラットフォームを評価する場合、コストと価格モデルを検討する必要があるのは間違いない。だが、忘れてならない特徴は他にもある。
注意すべき最大の問題は、サーバレスの意味がクラウドベンダーごとに若干違うことだ。各社のサーバレスプラットフォームはサポートするアプリケーションの種類が異なる場合がある。
ステートレスアプリケーションの種類
サーバレスコンピューティングは本来、イベントに応答する一時的なアプリケーションを実行する方法として構成されたものだ。こうしたアプリケーションはステートレスだ。つまり、関連する一連のイベントのコンテキストを認識しない。そのため、開発者はこれらのアプリケーションを必要に応じて読み込み、実行し、複製することができる。
サーバレスプラットフォームで実行できるステートレスアプリケーションは2種類ある。1つは関数(ラムダ)コンピューティングとして知られている。このモデルでは、入力を単純に関数処理した結果がアプリケーションの出力になる。アプリケーションを実行する頻度や場所にかかわらず、常に同じ反応が得られる。
もう1つはバックエンドで状態を管理するものだ。この種のアプリケーションでは、複数手順のプロセスのコンテキストをデータベースに格納する。そのため、アプリケーションの実行対象となる新しい手順を表す新規イベントが発生したときに、中断していた場所から再開できる。
関数モデルは問題が多い。というのも、ほとんどのアプリケーションはステートフルな動作を含むためだ。例えば、データベースへの書き込みや、複数手順のトランザクションプロセスのサポートはステートフルになる。サーバレスベンダーのプラットフォームでこのような動作が必要になる場合、ユーザーはアプリケーションを細分化してステートレスな部分に分ける必要がある。アプリケーションがサードパーティー製だったり、人手や時間が足りなかったりする場合、目標とする全てのアプリケーションでサーバレスコンピューティングを使うことはできなくなる。
バックエンドでステータス管理しているモデルの問題点は、主にその実装方法にある。ステータスを格納するデータベースの場所や、その取得や復元をする際に生じる遅延の長さが問題になる。この遅延は長くなる可能性があり、ユーザーによっては最大1秒間に及ぶこともある。その結果、アプリケーションのパフォーマンスを損なう恐れがある。サーバレスアプリケーションをさまざまな地域でホストしている場合はその場所が遅延に影響することもある。
サーバレスのパフォーマンスと移植性
サーバレスプラットフォームによって、サーバレスアプリケーションでの処理が必要となるイベントを認識するまでの時間が異なる。アプリケーションを起動し、そのアプリケーションでデータを取得するための時間も同様だ。応答時間は1ミリ秒単位で遅延が生じる。
サーバレスのパフォーマンスに影響を与える重要な問題はもう1つある。機能をホストする場所だ。ホストするアプリケーションと、そのアプリケーションで処理するイベントのソースが遠く離れていると、ネットワークの遅延が問題になる恐れがある。一方、ホストする場所が全て同じデータセンター内に集中することになったら、信頼性が上乗せされないだろう。さらには、二次的なホスト場所と最初のホスト場所の距離が遠いと、新しいホスト場所へのアクセスに伴う遅延が長くなり過ぎる恐れがある。バックエンド状態の同期における遅延も長くなる。
最適なパフォーマンスを実現するために開発者がアプリケーションを作成する方法も、サーバレスプラットフォームごとに異なる。あるベンダー向けにサーバレスアプリケーションを設計したとする。だが、それを別のベンダーのクラウドで実行するには、変更を加えることが必要になる可能性が高い。サーバレスコンピューティングは通常、クラウドベンダーのWebサービスがサポートしている幅広いIoT(モノのインターネット)システムや、イベント処理のエコシステムの一部になる。その点を考えると、この移植性の問題が特に当てはまる。こうしたサービスへの依存度が高くなるほど、サーバレスアプリケーションを別のベンダーに簡単に移植できる可能性は低くなる。
移植性に関するもう1つの問題は、サーバレスベンダーが全てのプログラミング言語やミドルウェアをサポートしているわけではないことだ。つまり、プログラミングツールを柔軟に選択できる場合を除き、サーバレスアプリケーションの移植可能性は全く保証されない。クラウドベンダーがサポートするツールは変化が早い。そのため、サーバレスプロジェクトを開始する前にその候補を慎重に評価する必要がある。本稿執筆時点でサポートしているツールの中から最も移植性が高いものを求めるとしたら、Node.jsでアプリを構築することを検討することになる。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
2
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
3
「データストレージの活用方法」に関するアンケート
-
4
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
-
5
本当に安いPCで十分か? “すぐ重くなる”を防ぐノートPC選びの絶対条件
-
6
Claudeの不可視透かしに批判殺到 著作権消失や誤判定に潜む企業リスク
-
7
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
8
221人調査で分かった「情シス最大のストレス」は?
-
9
LLMの「過学習」、正しく説明している文章はどれ?
-
10
レガシー基幹システムをSAPに統合 山善が突き止めた「標準化と個別最適」の境界線
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー