メディア

サーバレスアーキテクチャ比較、Lambda、Cloud Functions、Azure Functionsのどれを選ぶ?(2/3 ページ)

» 2018年01月29日 10時00分 公開
[吉村哲樹オフィスティーワイ]

AWS Lambda

 FaaSの先駆けとなるサービスであり、日本では、AWS(Amazon Web Services)が2015年に正式提供を開始した。AWSの多種多様なクラウドサービス、例えば「Amazon Simple Storage Service(S3)」「Amazon DynamoDB」「Amazon Kinesis」「Amazon Cognito」などの処理をトリガーにして、ユーザーがあらかじめ登録したファンクション(プログラム)を自動的に実行できる。

 AWS自体がクラウドプラットフォームとして広く普及しているため、自ずとAWS Lambdaを使ったサーバレスアーキテクチャのシステム開発事例も数多く存在する。ただし既に述べたように、システム設計に独自のノウハウが必要になるため、現時点ではAWSのシステム設計・構築に高い実績のある一部のシステムインテグレーターが先行している。例えば、後に紹介するように、AWS上のシステム設計や導入、保守運用のフルマネージドサービス「cloudpack」を提供するアイレットでは、国内でいち早くAWS Lambdaを使ったサーバレスアーキテクチャを全面採用した業務システムの設計・構築を手掛けている。

Google Cloud Functions / Google App Engine

 Googleが提供するクラウドプラットフォーム「GCP(Google Cloud Platform)」に含まれるサービスの1つとして、2016年から提供開始されたFaaSサービス(2017年12月時点ではβ版)。Cloud PubSub やCloud Storage をはじめとするGCPの各種クラウドサービスのイベントや、HTTPのイベントをトリガーにしてファンクションを起動できる。基本的な機能は先行するAWS Lambdaとほぼ同等だが、これまでGoogleの各種クラウドサービスを支えてきた長年の実績に裏付けられた安定性や、数ミリ秒での処理キャパシティー拡張といったスケーラビリティに強みを持つ。

 またGoogleは既に10年近くに渡り、サーバレスのWebアプリケーションプラットフォーム「Google App Engine」も提供している。Googleではこのサービスを、Google Cloud Functionsと並ぶサーバレスアーキテクチャのコアサービスと位置付けており、後に紹介するように既に国内外で数多くの実績を持つ。

Azure Functions

 マイクロソフトのクラウドプラットフォーム「Microsoft Azure」の1サービスとして、2016年から提供されているFaaSサービス。Microsoft Azureの他のクラウドサービスとの連携に優れる他、同社の開発ツール「Visual Studio」との親和性が高いのも大きな特徴。従って、これまでMicrosoft Azure上でシステム構築を行ってきたユーザーや、C#を使ってアプリケーション開発をしてきたユーザーにとっては、違和感なく使えるFaaSだろう。

 またAzure Functionsに限らず、FaaSサービスを選ぶ際には、「どのクラウドサービスを使いたいのか」「これまでどのクラウドプラットフォームを使い続けてきたか」を基準に選定するのが基本だといえよう。例えば、これまでAWSを使い続けてきたユーザーや、AWSのある特定のサービスを必要とするアプリケーションの場合は、必然的にAWS Lambdaが選択肢となるし、GCPのユーザー、あるいは「どうしてもBigQueryが使いたい」といったユーザーなら、自ずとGoogle Cloud Functionsを選ぶことになるだろう。

 なお、別のベンダーのクラウドサービスをトリガーにして、FaaSのファンクションを動かすことも可能だ。例えばGoogle Cloud Functionsに登録したファンクションを、AWSのクラウドサービスのイベントをトリガーにして動かすようなこともできる。このようにFaaSは、任意のクラウドサービスが提供するサービスだけでなく、API連携によってマルチクラウドのサービス間を結ぶハブのような役割を演じることができる。ただし、こうした使い方では、インターネット越しに処理が実行されるため、性能に関しては多くを期待しない方がいいだろう。

 最後に、サーバレスアーキテクチャの導入メリットが表れやすいユースケースや、実際にサーバレスアーキテクチャの導入・活用に成功した事例を幾つか紹介しよう。

Copyright © ITmedia, Inc. All Rights Reserved.

会員登録(無料)

製品カタログや技術資料、導入事例など、IT導入の課題解決に役立つ資料を簡単に入手できます。