海外コメンタリー

AWSとMicrosoft Azureのサーバレスアプリケーションはどう違う?

Keith Townsend (Special to TechRepublic) 翻訳校正: 石橋啓一郎 2016年04月11日 06時00分

  • このエントリーをはてなブックマークに追加

 シアトルで開かれた小さな展示会に招かれて講演をした際、思いもかけずサーバレスアプリケーションについて深く知る機会に恵まれた。サーバレスアプリケーションについては、数週間前にあるポッドキャストを聞いて、気になっていたところだった。

 IBMの「Bluemix」グループで働いている友人が、マイクロサービスについて情報交換する集まりがあることをツイートした後、筆者を呼んでくれたのだ。開催場所は宿泊先のホテルからわずか数ブロック先だった。そこで筆者は、「AWS Lambda」に関して、より深い、実践的な意見を聞くことができた。

サーバレスアプリケーションにもサーバはある

 サーバレスアプリケーションという言葉は、技術的な概念というよりは、マーケティング用語だ。Lambdaは別に、コンピュータなしでアプリケーションを動かすコンピューティングの革命ではない。筆者の考えでは、Lambdaはサーバを中心としないアプリケーションを構築するためのプラットフォームだと説明する方が、より正確だろう。この概念は、OSと密接に結びついたアプリケーション構築からの発想の転換だ。

 Lambdaは、開発者が「Amazon Simple Storage Service(Amazon S3)」などAmazonのほかのサービスを利用した、イベントベースのアプリケーションを作ることを可能にする。その集まりでは、メディア共有アプリが例として挙げられた。この例では、アプリケーションのユーザーは、S3のストレージバケットに動画を置くことができる。従来のOS中心のアプローチであれば、通常は、AWSのインスタンス上で動作しているサーバが、S3のオブジェクトストレージを監視して、新しいファイルがないかをチェックする仕組みになる。

 新しいファイルが見つかると、動画のエンコーディングプロセスが開始される。従来のOS中心の環境では、エンコーディングプロセスは仮想マシン上で実行されることになる。このため、エンコーダの仮想マシンに問題が起きると、それ以降のすべてのエンコーディングプロセスも停止してしまう。

 Lambdaでは、独立した関数を作ることによってマイクロサービスを作成する。これらのマイクロサービスは、OS中心のフレームワークではなく、Lambdaのフレームワークを使って開発される。開発者は、各Lambda関数の実行に必要なRAMの量を選択し、AWSは、選択されたメモリの量に基づいて、その関数を実行するのに必要な計算リソースとストレージリソースのサイズを決定する。

 今回のメディアエンコーディング関数の例では、S3がLambdaサービスにイベントを送信する。このイベントは、Lamda上に作られたエンコーダ関数の実行をトリガする。AWSは、S3から送られたイベントの処理に必要なだけの数のLambda関数を並行してインスタンス化する。開発者は、同時に並行して実行される関数の最大数を選択することができる。この制限は、MySQLによるバックエンドなどの、基盤システムに対する負荷をコントロールするための手段として利用できる。

 Lambdaのフレームワークを使ったこのシンプルなエンコーダプロセスは、OSによる規模や弾力性の制約を受けずに済む。AWSのLambdaとS3が選択されたリージョン内にある限り、このアプリケーションはOSの状態とは関わりなく機能し続けることができるわけだ。

MicrosoftのAzure Service Fabric

 Microsoftは最近、サンフランシスコで開催されたイベントBuild 2016で、「Azure Service Fabric」を一般公開したと発表した。Azure Service Fabricはサーバレスプラットフォームというよりは、「Windows Server」またはLinux上で動作するクラスタサービスとして売り出されている。Lambdaがどちらかと言えばコンピューティングの革命であるように見えるのに対し、Azure Service Fabricは、クラウドを利用したアプローチのための、マイクロサービスベースのアーキテクチャの進化であると捉えることができる。

 Azure Service Fabricでは、既存のコードやスケーラブルなマイクロサービスを実行する。Service Fabric用にネイティブに書かれたアプリケーションは、VMをリソースプールとして扱う。サービスは個々の仮想マシンとは切り離されている。一般に言って、Service Fabricのクラスタは、WindowsやLinuxをベースにしたVMに対応している。実際、AWSのインスタンスのコンピューティング能力をService Fabricで使用することも可能だ。Lambdaと比べると、Service Fabricはかなりコンテナのオーケストレーションやクラスタリングに近い。

 Azureで動作するService Fabricの売りは、多くのサービスが利用できることだ。AmazonがLambdaにS3を統合したのと同じように、AzureにもさまざまなAzureのパブリッククラウドサービスが統合されている。

この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

  • このエントリーをはてなブックマークに追加

この記事を読んだ方に

連載

CIO
シェアリングエコノミーの衝撃
デジタル“失敗学”
コンサルティング現場のカラクリ
Rethink Internet:インターネット再考
インシデントをもたらすヒューマンエラー
トランザクションの今昔物語
エリック松永のデジタルIQ道場
研究現場から見たAI
Fintechの正体
米ZDNet編集長Larryの独り言
大木豊成「仕事で使うアップルのトリセツ」
山本雅史「ハードから読み解くITトレンド放談」
田中克己「展望2020年のIT企業」
松岡功「一言もの申す」
松岡功「今週の明言」
内山悟志「IT部門はどこに向かうのか」
林 雅之「デジタル未来からの手紙」
谷川耕一「エンプラITならこれは知っとけ」
大河原克行「エンプラ徒然」
内製化とユーザー体験の関係
「プロジェクトマネジメント」の解き方
ITは「ひみつ道具」の夢を見る
セキュリティ
エンドポイントセキュリティの4つの「基礎」
企業セキュリティの歩き方
サイバーセキュリティ未来考
ネットワークセキュリティの要諦
セキュリティの論点
スペシャル
エンタープライズAIの隆盛
インシュアテックで変わる保険業界
顧客は勝手に育たない--MAツール導入の心得
「ひとり情シス」の本当のところ
ざっくり解決!SNS担当者お悩み相談室
生産性向上に効くビジネスITツール最前線
ざっくりわかるSNSマーケティング入門
課題解決のためのUI/UX
誰もが開発者になる時代 ~業務システム開発の現場を行く~
「Windows 10」法人導入の手引き
ソフトウェア開発パラダイムの進化
エンタープライズトレンド
10の事情
座談会@ZDNet
Dr.津田のクラウドトップガン対談
Gartner Symposium
IBM World of Watson
de:code
Sapphire Now
VMworld
Microsoft WPC
Microsoft Connect()
HPE Discover
Oracle OpenWorld
Dell Technologies World
AWS re:Invent
AWS Summit
PTC LiveWorx
吉田行男「より賢く活用するためのOSS最新動向」
古賀政純「Dockerがもたらすビジネス変革」
中国ビジネス四方山話
ベトナムでビジネス
日本株展望
企業決算
このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]