サーバーレスコンピューティングとアプリケーション

サーバーについて検討することなくアプリケーションを構築して実行する

サーバーレスコンピューティングとは何ですか?

サーバーレスコンピューティングにより、アプリケーションとサービスを構築して実行する際に、サーバーについて検討する必要がなくなります。サーバーレスアプリケーションでは、サーバーのプロビジョニング、スケーリング、および管理は必要ありません。サーバーレスアプリケーションはほぼすべてのタイプのアプリケーションやバックエンドサービス用に構築でき、高可用性を実現しながら、アプリケーションの実行およびスケーリングに必要なことをすべて自動的に行います。

なぜサーバーレスコンピューティングを使うのですか?

サーバーレスアプリケーションを構築することで、開発者は、クラウドでもオンプレミスでも、サーバーやランタイムの管理や操作に煩わされず、コア製品に集中することができます。このようなオーバーヘッドの削減によって、開発者は、スケーラブルで信頼性の高い優れた製品の開発に費やすために時間とエネルギーを取り戻すことができます。

サーバーレスコンピューティングのメリットは何ですか?

サーバーレスアプリケーションには主に 3 つのメリットがあります。

  • サーバーの管理が不要
  • 柔軟なスケーリング
  • 自動化された高可用性

サーバーの管理が不要

サーバーのプロビジョニングや保守は必要ありません。インストール、保守、または管理が必要なソフトウェアまたはランタイムはありません。 

柔軟なスケーリング

アプリケーションは、自動的にスケーリングすることも、個々のサーバー単位ではなく消費単位 (スループットやメモリなど) を切り替えて容量を調整し、スケーリングすることもできます。

自動化された高可用性

サーバーレスアプリケーションには、可用性とフォールトトレランス機能が組み込まれています。これらの機能は、アプリケーションを実行しているサービスがデフォルトで提供するため、設計する必要はありません。

導入事例

Coca Cola

アメリカの清涼飲料水分野の多国籍企業である Coca-Cola Company は、AWS Lambda と AWS Step Functions を使用してコスト効果の高いサーバーレスソリューションを構築しました。

ブログを読む »

finra logo(1)

FINRA は米国の証券ブローカー・ディーラーを監視し、詐欺やインサイダー取引を特定するなど、毎日 750 億もの市場事象を分析しています。

続きを読む »

iRobot

iRobot は世界一流の消費者用ロボット企業で、AWS Lambda と AWS IoT を用いて、WiFi に接続された新しい Roomba 電気掃除機に接続するウェブアプリケーションを実行しています。

続きを読む »

Localytics

Localytics はウェブモバイルアプリの分析とエンゲージメントを行う企業であり、AWS Lambda を使用して並列データストリームとマイクロサービスを構築しました。

続きを読む »

AWS サーバーレスプラットフォームの機能

規模に応じて実行できる本運用のサーバーレスアプリケーションを提供するには、幅広い機能を備えたプラットフォームが必要です。AWS がどのようにエンタープライズグレードのサーバーレスアプリケーションをサポートするかを次に示します。

クラウドロジックレイヤー

AWS Lambda でビジネスロジックを動かします。AWS Lambda は、相互に関連するインフラストラクチャリソースとウェブ API すべてのコントロールプレーンおよびロジックレイヤーとして動作します。

オーケストレーションとステート管理

AWS Step Functions を使用して、サーバーレスアプリケーションを構成するそれぞれの分散コンポーネントやマイクロサービスのステートを調整し、管理します。

応答データソース

さまざまなデータソースとプロバイダから、リアルタイムでデータを処理してイベントをトリガーする組み合わせを選びます。応答データソースの一覧はドキュメントを参照してください。

アプリケーションのモデリングフレームワーク

オープンソースの AWS サーバーレスアプリケーションモデルを使用して、サーバーレスアプリケーションおよびサービスをモデル化し、デプロイします。AWS CodePipelineAWS CodeBuildのようなアプリケーションライフサイクル管理ツールを使用して、サーバーレスアプリケーションを継続的に供給します。

開発者エコシステム

サードパーティーツールとオープンソースプロジェクトのエコシステムを活用して、開発から本運用までのコードの構築、テスト、デプロイを合理化します。サードパーティーツールの詳細については、開発者向けツールページまたはエコシステムページをご覧ください。

アプリケーションとインテグレーションライブラリ

AWS Serverless Application Repository を使用してサーバーレスアプリケーションとアプリケーションコンポーネントをすばやく見つけてデプロイし、ウェブやモバイルのバックエンド、チャットボット、IoT、Alexa Skills、データ処理、ストリーム処理などのさまざまなユースケースを実現します。また、一般的なサードパーティーサービス (Slack、Algorithmia、Twilio、Loggly、Splunk、Sumo Logic、Box など) との統合も見つかります。

セキュリティとアクセスコントロール

コンプライアンスを遵守し、ロギング、変更の追跡、アクセスコントロール、暗号化によって、お客様の IT 環境全体を保護します。AWS Identity and Access Management (IAM) によって、AWS リソースへのアクセスをセキュアに制御します。Amazon Cognito で、サーバーレスアプリケーションのエンドユーザーを管理および認証します。Amazon Virtual Private Cloud (VPC) を使用して、ユーザーだけがアクセスできるプライベート仮想ネットワークを構築します。

信頼性とパフォーマンス

AWS では、エンタープライズ規模の性能を実現する高可用性で、スケーラブルな、低コストのサービスを利用できます。AWS Lambda を使用すると、デッドレターキュー自動再試行などの組み込み機能が利用できるため、お客様のビジネスロジックは確実に実行されます。企業が AWS を使用してアプリケーションを運用する方法については、お客様事例を参照してください。

グローバル規模のスケーリングと展開

AWS のグローバル展開を活用して、お客様のアプリケーションとサービスを短時間でグローバルに展開できます。AWS Lambda は、複数の AWS リージョン および Lambda@Edge 経由のすべての AWS エッジロケーションで使用できます。また、AWS Greengrass にローカルで接続されたデバイスで Lambda 関数を実行できます。

AWS サーバーレスプラットフォーム

AWS には、サーバーレスアプリケーションの構築と実行に使用できる完全マネージド型サービスのセットが用意されています。サーバーレスアプリケーションでは、コンピューティング、データベース、ストレージ、ストリーム処理、メッセージキューイングなどのバックエンドコンポーネントのためにサーバーのプロビジョニング、メンテナンス、管理を行う必要がありません。また、アプリケーションの耐障害性や可用性を心配する必要もなくなりました。代わりに、これらの機能はすべて AWS が自動的に処理します。これにより、市場投入までの時間を短縮するのと同時に、製品のイノベーションに注力できます。

コンピューティング

AWS Lambda を使用することで、サーバーのプロビジョニングや管理をすることなく、コードを実行できます。課金は実際に使用したコンピューティング時間に対してのみ発生し、コードが実行されていないときは料金が発生しません。コードをアップロードするのみで、高可用性を実現しながらコードを実行およびスケールするために必要なことはすべて Lambda によって処理されます。

Lambda@Edge では、Amazon CloudFront イベントに対応して AWS Edge ロケーションで Lambda 関数を実行できます。

API プロキシ

Amazon API Gateway は完全マネージド型サービスであり、開発者があらゆる規模で API の作成、配布、保守、モニタリング、保護を簡単に行うために役立ちます。Amazon API Gateway を使用すると、数十万の同時の API コールを処理し、トラフィック管理、認証とアクセス管理、モニタリング、API バージョン管理を実行できます。

ストレージ

Amazon Simple Storage Service (Amazon S3) では、セキュアで耐久性があり拡張性の高いオブジェクトストレージを、開発者や IT チームに提供しています。Amazon S3 は、シンプルなウェブサービスインターフェイスにより、ウェブのどこからでもお好みの量のデータを簡単に保存および取得できます。

データストア

Amazon DynamoDB は、1 桁台のミリ秒単位のレイテンシーを必要とするすべての規模のアプリケーションに対応した高速かつフレキシブルな NoSQL データベースサービスです。完全マネージド型のクラウドデータベースで、ドキュメントとキー値のストアモデルの両方をサポートしています。

AWS AppSync では、ウェブアプリケーションやモバイルアプリケーション内のデータがリアルタイムで自動的に更新されます。また、オフラインユーザーが再接続するとすぐにデータが更新されます。AppSync では、サーバーにあるデータのフェッチ、変更、サブスクライブをクライアントアプリケーションから実行できるデータ言語、GraphQL が使用されます。

プロセス間メッセージング

Amazon SNS は、完全マネージド型の pub/sub メッセージングサービスであり、マイクロサービス、分散システム、およびサーバーレスアプリケーションの切り離しとスケーリングを容易にします。

Amazon SQS は、完全マネージド型のメッセージキューイングサービスであり、マイクロサービス、分散システム、およびサーバーレスアプリケーションの切り離しとスケーリングを容易にします。

オーケストレーション

AWS Step Functions により、視覚的なワークフローを使用して分散アプリケーションとマイクロサービスのコンポーネントを簡単に調整できます。それぞれ別個の機能を実行する個々のコンポーネントからアプリケーションを構築することで、簡単にアプリケーションをスケールおよび変更できるようになります。Step Functions を使えば、安心してコンポーネントを調整し、アプリケーションの機能を配置できます。

分析

Amazon Kinesis は、AWS のデータをストリーミングするプラットフォームであり、ストリーミングデータのロードと分析を簡易化する強力なサービスや、特定ニーズ用のカスタムストリーミングデータアプリケーションを構築する機能を提供します。

Amazon Athena はインタラクティブなクエリサービスで、Amazon S3 内のデータを標準的な SQL を使用して簡単に分析できます。Athena はサーバーレスなので、インフラストラクチャの管理は不要です。実行したクエリに対してのみ料金が発生します。

開発者用ツール

AWS は、サーバーレスアプリケーション開発プロセスで開発者を支援するツールとサービスを提供しています。AWS とそのパートナーエコシステムは、継続的な統合と配信、テスト、デプロイ、モニタリングと診断、SDK、フレームワーク、および統合開発環境 (IDE) プラグインのためのツールを提供しています。

詳細 »

サーバーレスアプリケーションのユースケース

サーバーレスアーキテクチャを使用すると、事実上あらゆるタイプのアプリケーションやバックエンドサービスを構築できます。以下にいくつかのユースケースを示します。


ウェブアプリケーションとバックエンド

AWS Lambda、Amazon API Gateway、Amazon S3、Amazon DynamoDB を使用すると、サーバーレスのウェブアプリケーションやバックエンドを構築し、ウェブ、モバイル、IoT、チャットボットのリクエストを処理できます。

リファレンスアーキテクチャ: | サンプルコード

Lambda_WebApplications

リファレンスアーキテクチャ: | サンプルコード

Lambda_MobileBackends
Bustle_logo2

Bustle では、AWS Lambda と Amazon API Gateway を使用して、Bustle iOS アプリケーションとウェブサイトのサーバーレスバックエンドを実行します。サーバーレスアーキテクチャでは、Bustle でインフラストラクチャを管理する必要はまったくないため、すべてのエンジニアは新しい機能の構築や新規開発に集中できます。導入事例を読む »


データ処理

AWS Lambda、Amazon Kinesis、Amazon S3、Amazon DynamoDB を使用して、さまざまなリアルタイムデータ処理システムを構築できます。

リファレンスアーキテクチャ: | サンプルコード

Lambda_FileProcessing
square-enix_logo

Square Enix は、AWS Lambda を使用して、大規模なマルチプレイヤーオンラインゲームの画像処理を実行します。Lambda を使用することで、通常のトラフィックの最大 30 倍のスパイクを確実に処理できるようになりました。また、画像処理に要する時間が数時間からわずか 10 秒あまりに短縮され、インフラストラクチャと運用のコストが削減されました。導入事例を読む »

リファレンスアーキテクチャ: | サンプルコード

Lambda_StreamProcessing
Thomson_Reuters_logo2

Thomson Reuters は、サーバーレスアーキテクチャを使用して、使用状況分析サービスで 1 秒あたり最大 4,000 イベントを処理します。このサービスは、通常のトラフィックの 2 倍のスパイクを確実に処理し、高い耐久性を備えています。同社は AWS を使用してわずか 5 か月でこのサービスを本番環境にデプロイしました。導入事例を読む »

サーバーレスコンピューティングの使用開始

icon1

AWS アカウントにサインアップする

AWS 無料利用枠にすぐにアクセスできます。
icon2

ステップバイステップのチュートリアルで学ぶ

簡単なチュートリアルで学習します。
icon3

サーバーレスアプリケーションを構築する

AWS Serverless Application Repository で一般的なユースケースのアプリケーションを見つけます。

サーバーレスアプリケーションの構築の詳細

リソースのページにアクセスする
始める準備はできましたか?
AWS Serverless Application Repository を使用開始
ご不明な点がおありですか?
お問い合わせ