
「会社でaws lambdaを運用することになったけれども何の事か分からない」「aws lambdaについて知っておきたい」と考えていませんか。aws lambdaは現在、注目を集めているサービスです。
サーバーレスでコストダウンになるというので、取り入れることを検討する企業も増えています。とはいえaws lambdaと聞いてもよく分からない、ということもありますよね。そこで超初心者でも理解できるよう、aws lambdaについてかみ砕いてご紹介していきます。
awsはAmazonが提供するクラウドコンピューティングサービス
awsは「Amazon Web Services」の略称です。これを見ても分かる通り、awsは皆さんご存じのAmazonが提供しています。クラウドコンピューティングサービスの1つで、登録するだけでインターネット(クラウド)上に用意されたストレージやアプリケーション等を、ネットを通して利用することができます。
クラウドコンピューティングサービスと言われても、ピンとこないかもしれません。しかしクラウドコンピューティングサービスは、既に身近な存在になってきているサービスです。たとえばMicrosoft Office 365やAmazon Alexa、Gmail等も、クラウドコンピューティングサービスに含まれます。
知らないうちにその恩恵を受けていると聞き、びっくりするかもしれませんね。クラウド上のアプリケーションを利用するので、自分のPCにインストールしなくても済みますし、企業の場合は物理的サーバーを用意する必要がなくなります。
コスト的にメリットが大きいですし、セキュリティの面でも万全の対策が講じられているので安心です。クラウドコンピューティングサービスは、今後も伸びていく分野として期待されています。
aws lambdaって何?
aws lambdaは、awsが提供するクラウドコンピューティングサービスの1つで、サーバーレスな点に特徴があります。awsにはAmazon EC2というサービスもありますが、こちらはクラウド上の仮想サーバーです。
サーバーなので、利用しなくても料金がかかります。その点aws lambdaはサーバーレスなので、サーバー代がかかりません。料金設定もAmazon EC2とは大きく違います。この両者にはそれぞれ向き不向きがあり、それを考慮した上で使い分けるのが賢明です。
ではaws lambdaを運用する前に知っておきたい5つのこと(3つのメリットと2つの注意点)を、それぞれ見ていきましょう。
知っておきたいaws lambdaの3つのメリット
aws lambdaのメリットは幾つかありますが、代表的なものは「コストを減らせる」「オートスケール機能がある」「セキュリティが高い」の3つです。aws自体が低コストで高セキュリティですが、aws lambdaは特にその傾向が強いサービスです。
aws lambdaは、プログラムを実行した回数や時間により料金が発生します。実行しなければ、お金は一切かかりません。また、無料で使用できる枠が大きく、使い方次第では他のクラウドコンピューティングサービスとは比較にならないほどコストを下げることが可能です。
aws lambdaには、オートスケール(自動で利用するサーバーを増やす)機能が備わっています。プログラムによっては、アクセスの増加などによりサーバーへの負荷が増す場合があります。そういった際に、aws lambdaはオートスケールなので安心です。
負荷やサーバーの数を気にせずプログラムを実行できるのは、とても大きなメリットだと言えるでしょう。またaws lambdaに関しては、サーバーやプラットフォームの仕様や情報が公開されていません。そのためハッキングなどの攻撃を受けにくく、安心して利用することができます。
低コストでオートスケール機能が備わり、しかも高セキュリティ。これがaws lambdaの主な特徴であり、メリットです。
知っておきたいaws lambdaの2つの注意点
aws lambdaはメリットの多いクラウドコンピューティングサービスですが、注意すべき点もあることは覚えておきましょう。特に「aws lambda単独では使えない」点と「クラウド依存である」点は見逃すことができません。
残念ながらaws lambdaは、それだけでは効果を発揮しないので、awsの他のサービスと組み合わせる必要があります。よく使われるのはAmazon S3ですが、これにはもちろん料金がかかります。aws lambda自体の料金は安いのですが、実際に運用する場合には他のサービスとの合計金額で判断しなければなりません。
aws lambdaはサーバーレスなサービスです。そのためawsが設定した、クラウド上の制限に従う必要があります。メモリ割り当ての最大値は3,008MBで、それを超えるような場合には利用できない可能性がありますし、処理時間にも制限があるので注意が必要です。
また、aws lambdaのサーバーレス環境はよいのですが、完全に障害が発生しないというわけではないので、aws lambda以外のサーバーレス環境でも使えるよう、あらかじめ設計しておくのが大事です。
aws lambdaの具体的な導入例
aws lambdaのメリットや注意点を見てきましたが、それだけではなかなか実際のイメージが掴みにくいのではないでしょうか。そこでこのコーナーでは、aws lambdaの具体的な導入例を幾つかご紹介していきます。
ドラクエやファイナルファンタジーで知られる「SQUARE ENIX」は、aws lambdaを導入している企業の1つです。
SQUARE ENIXのあるゲームには、ゲーム内で写真を撮影できる機能があります。撮影した写真は、サーバー上でサムネイル画像の作成などが行われ公開されます。しかし大規模なイベント時などには撮影が集中するので、処理がとても重くなってしまう可能性も。
その負担を軽くするために、オートスケール機能のあるaws lambdaが導入されたということです。メジャーリーグベースボールのデジタル部門である「MLB Advanced Media」も、aws lambdaを導入しています。
野球中継で「Statcast」というものを見たことはありませんか?このStatcastはMLB Advanced Mediaの製品で、リアルタイムなボールの動きや速度などを教えてくれる存在です。試合では、大量のデータが集まるもの。
そのデータの分析や配信に役立っているのが、aws lambdaです。オンライン写真プラットフォームの「PhotoVogue」もaws lambdaを導入しており、Amazon S3にアップロードされた写真をネット上で、GIFやJPEGやPNGなどに変換する際に活用しています。
以上の3つ以外にも、aws lambdaを導入している企業やサービスはたくさんあります。たとえば世界最大の動画配信サービスである「Netflix」がそうですし、米国最大規模の独立系投資アドバイザーである「Financial Engines」も同様です。
他にも「T-Mobile」や「iRobot」などといった、世界的な企業がaws lambdaを導入しています。この動きは今後、さらに拡大していくのではないでしょうか。
aws lambdaを運用するなら基本的なことを知っておくのが大事
aws lambdaの具体的な導入例でも触れたように、世界規模の多くの企業が既にaws lambdaを導入しています。こういった流れを見ていると、すぐにでも導入したいと思ってしまうかもしれませんね。しかし実際に導入する前に、自分の会社の運用方法にaws lambdaが合っているのかどうか、よく検討するのが大事です。
基本的な事柄をしっかりと知って理解し、メリットが大きいと判断できる場合には導入を考えましょう。
参考資料《aws運用代行 ... CloudCREW》https://managed.gmocloud.com/managed/