実績と未来を見せた「AWS Summit 2016」 第4回
LambdaとAPI Gateway担当者がわかりやすく説明
エンジニアを魅了するサーバーレスと進化を続けるLambda
2016年06月03日 12時00分更新
6月1日から開催されているAWS Summit 2016の2日目。Developer Conferenceでは、AWSでLambdaとAPI Gatewayを担当するティム・ワーグナー氏が、今もっとも注目を集めるサーバーレスコンピューティングとLambdaの活用をわかりやすく説明した。
仮想マシン、コンテナ、サーバーレスの違いとは?
Lambdaのように仮想サーバーを立てることなく、クラウド上で直接コードを実行するサーバーレスコンピューティングについて基礎からきちんと説明してくれたのが、今回講演したAWSのティム・ワーグナー氏だ。
ワーグナー氏は、コンピュートの抽象化という観点から仮想マシン(VM)とコンテナ、そしてサーバーレスを比較する。まずハードウェアを抽象化したのが仮想マシンで、こちらはスケーリングの単位がマシン単位になる。こちらはAWSの主力サービスであるEC2として提供されている。一方、OSを抽象化し、スケーリングの単位をアプリまで細かくしたのがコンテナだ。こちらはDockerコンテナを管理するECS(Elastic Container Service)として実装されている。そして、サーバーレスを実現するLambdaは抽象化の対象が言語・ランタイムで、スケーリングの単位は機能になる。「インフラを気にせず、実行するコードを与えればよい」(ワーグナー氏)。
これら3つはどのように選択するか? たとえば、EC2はマシンやストレージ、ネットワーク、OSを構成するのに向いている。もっともコンピューティング環境を制御でき、柔軟性が高いのがEC2になる。ECSでは既存のアプリケーションをDockerイメージとしてクラウド上で管理できる。そして、Lambdaはコンピュートの完璧な実行方法だという。「OSを変える必要がないし、われわれにコードをいただければ、必要な時に実行する。みなさんはビジネスロジックだけを気にすればいい」とワーグナー氏はアピールする。
サーバー管理不要で、コスト効果も高いLambdaのメリット
続いてワーグナー氏はLambdaの3つのメリットを挙げる。まずはサーバー管理がいらないこと。サーバーの導入計画や運用を考えないで済むのが、Lambdaの最大のメリットだ。また、スケーリングも優れており、短い時間で数多くのリクエストをこなすことが可能だ。さらに、使っていない時間は課金されないという点。「もはやコールドサーバーはないということだ」とワーグナー氏はアピールする。
Lambdaは価格も低廉で、100ミリ秒に0.21セントで提供される。「電気のように使った分だけの課金になる。コンピュータを使って、無駄にお金を使うことはもはやなくなる」(ワーグナー氏)。しかも毎月100万リクエストと、40万GB分のコンピュートが無料で提供されるため、テストや検証でも価格を気にせず利用できる。
利用方法は簡単で、Node.js、Java、Python、ユーザー独自のカスタムライブラリをZIP形式でアップロードし、Lambda関数を設定すればOK。リソースは128MBから1.5GBまでメモリを選択でき、それに比例したCPUやネットワークが自動的に割り当てられるという。また、Lambda関数にはAWSのSDKへのアクセス権限が付いてくるため、プラグインを介してVisual StudioやEclipseのようなIDEでオーサリングしたり、コマンドラインツールを使うことも可能。一方で、データ自体は永続的なデータストアに保存する必要があるという。たとえば、セッションやログデータはDynamoDB、オブジェクトはS3などに置いておけば、Lambdaから利用が可能になる。
この連載の記事
-
第7回
デジタル
AWS幹部に聞いたエネルギーあふれるコミュニティの作り方 -
第6回
デジタル
「農業分野のIoTでも使いやすい価格を!」AWSへ要望 -
第5回
デジタル
SIer依存脱却!AWSを自社運用する「あるフツーの会社」の勇気 -
第3回
デジタル
「2週間でできた」日本電産のIoT基盤など、AWS事例多数紹介 -
第2回
デジタル
国内販売は?音声認識&人工知能のAlexaで生まれる未来 -
第1回
クラウド
ようこそ洞察の時代へ!GEのCTOが語るデジタル時代の挑戦 -
デジタル
実績と未来を見せた「AWS Summit 2016」 - この連載の一覧へ