Amazon Web Services ブログ

Category: Serverless

新しいクラスルームトレーニングでサーバーレススキルをさらに向上させる

この記事は、2021年4月6日に Ed Van Sickle によって投稿された Furthering your serverless skills with a new training course を翻訳したものです。 サーバーレスを使用すると、俊敏なアプリケーションを構築できるため、イノベーションと変化への迅速な対応が可能になります。サーバーレスコンピューティングでは、キャパシティのプロビジョニングやパッチ適用などのインフラストラクチャ管理タスクは AWS によって行われるため、顧客にサービスを提供するコードの記述のみに集中できます。AWS Lambda などのサービスには、オートスケーリング、組み込みの高可用性、および従量課金モデルが含まれています。Lambda はイベント駆動型のコンピューティングサービスであり、サーバーを管理することなく、150 を超えるネイティブに統合された AWS および SaaS ソースからのイベントに応答してコードを実行できます。 サーバーレスは考え方でもあります。そのため、サーバーレスの開発者は「サーバーレス “も” (serverless also)」ではなく「サーバーレス “から” もしくは サーバーレス “ファースト” (serverless first)」と考えます。 より多くの開発者がこの「サーバーレスファースト」な考え方に移行しています。これから Developing Serverless Solutions on AWS という新しいクラスルームトレーニングでサーバーレススキルをさらに向上させることができます。

Read More

CloudFront 関数の導入 – 任意の規模において低レイテンシーでコードをエッジで実行

Amazon CloudFront を使用すると、データ、動画、アプリケーション、API を低レイテンシーと高速転送速度で世界中の顧客に安全に配信できます。カスタマイズされたエクスペリエンスを可能な限り最小のレイテンシーで提供するために、今日の多くのアプリケーションはエッジで何らかの形式のロジックを実行します。エッジでロジックを適用するユースケースは、主に 2 つのカテゴリに分類できます。 最初のカテゴリは、オブジェクトがキャッシュにないときに実行される複雑な計算負荷の高いオペレーションです。私たちは、広範で複雑なカスタマイズを実装するための完全にプログラミング可能なサーバーレスエッジコンピューティング環境を提供するために 2017 年に Lambda@Edge を立ち上げました。Lambda@Edge 関数は、リージョンのエッジキャッシュで実行されます (通常は、クライアントがアクセスする CloudFront エッジロケーションに最も近い AWS リージョン内にあります)。たとえば、動画やオーディオをストリーミングする場合、Lambda@Edge を使用して適切なセグメントをすばやく作成して提供することで、オリジンのスケーラビリティの必要性を減らすことができます。もう 1 つの一般的なユースケースは、Lambda@Edge と Amazon DynamoDB を使用して、短縮されたユーザーフレンドリーな URL を完全な URL ランディングページに変換することです。 ユースケースの 2 番目のカテゴリは、非常に短命の関数で実行できるシンプルな HTTP(S) リクエスト/レスポンス操作です。このユースケースでは、パフォーマンス、スケール、費用対効果を備え、各リクエストで操作を実行できる柔軟なプログラミングエクスペリエンスが必要です。 この 2 番目のユースケースを支援するために、218 以上の CloudFront エッジロケーションで軽量の JavaScript コードを Lambda@Edge の 1/6 のコストで実行できる新しいサーバーレススクリプトプラットフォームである CloudFront Functions の提供が開始されました。 CloudFront Functions は、次のようなウェブリクエストの軽量な処理に最適です。 キャッシュキーの操作と正規化: HTTP リクエスト属性 (URL、ヘッダー、クッキー、クエリ文字列など) […]

Read More

Modern Apps Live – サーバーレスやコンテナなどに関する 5 月のセッション

Modern Apps Live は、モダンアプリケーション開発に関して 5 月に Twitch でライブストリーミング配信されるイベントシリーズです。 セッションのトピックには、サーバーレス、コンテナ、モバイルおよびフロントエンドの開発などが含まれます。 あまり馴染みのない方のために、モダンアプリケーションの特徴を以下に紹介します。 数百万のユーザーに迅速に拡張できます。 グローバルな可用性があります。 膨大なデータを管理します (エクサバイト単位)。 応答はミリ秒単位です。 このようなアプリケーションは、マイクロサービスアーキテクチャ、サーバーレス運用モデル、およびアジャイル開発者プロセスを組み合わせて構築されます。モダンアプリケーションでは、イノベーションの加速に加えて、リスク、市場投入までの時間、TCO (総所有コスト) の削減を実現することができます。 Modern Apps Live は、4 つの仮想イベントで構成されるシリーズです。 Container Day x Kubecon (5 月 4 日) Serverless Live (5 月 19 日) Mobile and Front-end Live (5 月 25 日) Container Day x DockerCon (5 月 26 日) 開始したばかりの方にとっても、クラウドの経験が豊富な方にとっても、これらのセッションは、モダンアプリケーションの構築と設計を検討している開発者、ソリューションアーキテクト、または IT および […]

Read More

サーバーレスフレームワークと AWS Service Catalog を使ってより速くコードをデプロイする

AWS のパートナーソリューションアーキテクト、Chris Chapman GoDaddy のソフトウェア開発部、シニアディレクター、Edward Abrams 氏 Serverless Framework はオープンソースプロジェクトで、AWS Lambda や Amazon API Gateway などのサービスを使用してサーバーレスアプリケーションを迅速に構築およびデプロイしたい多くのアマゾン ウェブ サービス (AWS) のお客様に人気があります。 開発者と運用の専門家のために、サーバーレスフレームワークは、serverless deploy という 1 つの簡単なコマンドでコードをビルド、パッケージ化、デプロイします。 企業が AWS 環境を開発者やチームにまたがって拡大するにつれて、事前定義された標準化されたインフラストラクチャテンプレートに移行して、コードのデプロイプロセスをスピードアップし、設定にかかる時間を短縮しています。AWS Service Catalog は、開発者が事前定義された AWS CloudFormation テンプレートを迅速かつ安全にプロビジョニングできるようにする理想的なサービスです。 この記事では、GoDaddy と AWS がサーバーレスフレームワークを活用して共同で開発したオープンソースソリューションを紹介し、開発チームのコードデプロイプロセスを促進および簡素化します。 サーバーレスフレームワークは、AWS パートナーネットワーク (APN) の アドバンストテクノロジーパートナーである Serverless, Inc. によって管理されています。 Service Catalog を使用したコードとしてのインフラストラクチャ AWS Service Catalog は、事前定義された不変のテンプレートのみをプロビジョニングできる AWS CloudFormation […]

Read More

AWS Step Functions コールバックを利用した外部システム連携

Shared Delivery Teams で Sr. Cloud App Architect を務める Zach Abrahamson による記事です。 AWS Step Functions を使用すると、複数の AWS サービスを調整してサーバーレスワークフローに落とし込めるため、アプリケーションの開発と更新を迅速に行うことができます。Step Functions を使用すると、AWS Lambda や Amazon ECS のようなサービスを機能豊富なアプリケーションに統合するワークフローを設計および実行できます。

Read More

Amazon API Gateway のHTTP API を使用したバイナリデータの処理

この投稿は、スタートアップソリューションアーキテクトのRudolf Potucekによって書かれました。 Amazon API Gateway の REST API は、2016 年からバイナリデータをサポートしています。2020年3月に GA した Amason API Gateway のHTTP API を使用 すると、バイナリメディアタイプとテキストメディアタイプの両方をより簡単に操作できます。新しいペイロード形式バージョンをサポートし、リクエストおよびレスポンス形式に基づいてエンコーディングを推測します。この投稿では、HTTP API と AWS Lambda を使用して、テキストまたは画像のいずれかを受け入れて返すAPIを構築する方法を示します。Amazon API Gatewayの base64 エンコーディングは、AWS Lambda でのテキストとバイナリデータの処理を統合します。バイナリデータと非バイナリデータ(テキストデータ)は、JSON オブジェクトの文字列として Lambda 関数に渡されます。HTTP API の Lambda 統合では、リクエストで渡されたcontent-type ヘッダーに基づいてエンコードの必要性を自動的に推測します。

Read More

Amazon S3 Object Lambdaの紹介 – コードを利用して S3 から取得するデータを処理

Amazon Simple Storage Service(S3)にデータを保存すると、複数のアプリケーションで使用するためにデータを簡単に共有することができます。しかし、それぞれアプリケーションごとに固有の要件があり、データの異なるビューが必要になる場合があります。例えば、eコマースアプリケーションによって作成されたデータセットには個人識別情報(PII)が含まれる場合がありますが、データ分析のために処理するときには個人識別情報は不要であり、編集(マスキング等)がされているべきです。一方、同じデータセットがマーケティングキャンペーンに使用されている場合は、顧客ロイヤルティデータベースからの情報など追加の詳細データで補填する必要があるかもしれません。複数のアプリケーションにデータの異なるビューを提供するには、現在、2つのオプションがあります。データの派生コピーを追加作成、保存、維持して、各アプリケーションに独自のカスタムデータセットを持たせるオプションと、S3 の前にプロキシレイヤーとしてインフラストラクチャを構築および管理して、リクエストごとにデータをインターセプトして処理するオプションです。両オプションともに複雑性とコストが追加で発生するため、S3 チームはよりよいソリューションを構築することを決定しました。

Read More

大手金融機関におけるセキュリティ・コンプライアンスのためのイベント管理

本投稿では、商業銀行として米国で Top 25 内にランクインしている金融機関であるBBVA USAが、AWS サービスを使用して大規模なイベント管理の仕組みを実装し、クラウド環境に関連する変更イベントを一元管理し、アクションを自動化した方法について紹介しています。一般的に、モノリシック環境でのセキュリティ・コンプライアンスは、管理・監視対象となるインフラストラクチャが少ないため、監視と実施が比較的容易です。それが多くなったとしても、インフラストラクチャをコード化すれば、民主化され分散化されたアプローチによって、コンプライアンスの見落としなく構成の差分管理(ドリフト)と追跡処理を環境に取り入れることができます。 インフラストラクチャの正常な状態を識別し、そこから外れた違反状態を把握することにより、インフラの状態の可視性が確保され、必要に応じて自動修復によって遵守を強制させることが可能になります。このために、セキュリティイベントの通知やベースラインとなる構成定義といった機能を使うことができます。

Read More

サーバーレスでスケールするマルチプレイヤーゲームを構築する

本投稿は、Sr.Solutions Architect, Developer Acceleration の Tim Bruce よる記事を翻訳したものです。 ゲーム開発は、要件が急速に変化するため非常に繰り返しの多いプロセスです。ゲーム開発者の多くは、可能な限り多くの時間を機能の構築のために費やしたいと思っており、サーバー設定、インフラストラクチャ管理、スケーリング技術の習得に時間を費やしたくないと考えています。 AWS のサーバーレスサービス を利用することで、4つの大きなメリットが得られます。1つ目は、運用オーバーヘッドを削減することで、企画からリリースまでのプロセスを短くします。2つ目は、運用に必要なハードウェアとソフトウェアを過剰にプロビジョニングしないため、コスト削減を実現できる可能性があります。3つ目は、サーバーレスはユーザーのアクティビティに応じてスケールします。最後は、サーバーレスサービスには組み込みの統合機能があるため、サービス統合に労力をかけることなくゲーム開発に集中できます。 AWSを利用するゲーム開発者は、これらのメリットを活用することで、チームがサーバーやソフトウェアのセットアップや保守といった差別化につながらないタスクに時間を費やすのではなく、ゲーム体験の向上やコンテンツ開発により多くの時間を費やすことができます。これにより、ゲーム体験とコンテンツがより良いものとなり、リリースまでの時間も短縮されます。 本ブログ記事では、「サーバーレスファースト」アーキテクチャを持つゲームについて紹介します。 Simple Trivia Service はウェブベースのゲームであり、貴社のゲームにも適用可能な複数のアーキテクチャパターンを持っています。

Read More

Docker コンテナイメージを使用した PHP Lambda 関数の構築

本投稿は AWS サーバーレス アプリケーションのシニアデベロッパーアドボケートである Benjamin Smith による寄稿です。 re:Invent 2020 で、AWS Lambda 関数をコンテナイメージとしてパッケージ化してデプロイできる機能が発表されました。AWS Lambda 関数をコンテナイメージとしてパッケージ化すると、PHP などのカスタムランタイムを実行する開発者にいくつかの注目すべき利点がもたらされます。このブログ投稿では、これらの利点について説明し、Lambda 関数の新しいコンテナイメージサポートを使用してサーバーレス PHP アプリケーションを構築する方法を示します。 概要 多くの PHP 開発者は、デプロイを容易にするために、ポータブルなアーティファクト作成としてコンテナを利用したアプリケーションの構築方法をご存知のことでしょう。アプリケーションをコンテナとしてパッケージ化すると、複数の環境で一貫した PHP バージョン、パッケージバージョン、および構成設定を維持しやすくなります。

Read More