概要

Amazon CloudFront の動的画像変換 (旧サーバーレスイメージハンドラー) は、Amazon CloudFront のグローバルコンテンツ配信ネットワーク (CDN) を介したリアルタイムのイメージ処理を可能にします。この AWS ソリューションを使用すると、運用コストと複雑さを大幅に削減しながら、ビジュアルコンテンツの配信を最適化できます。単一のソースイメージをオンデマンドで動的に変換することで、同じイメージの複数のバージョンを保存する必要がなくなり、ストレージを大幅に節約できます。このソリューションでは、URL 署名、リクエスト検証、コンテンツモデレーション機能など、不適切なコンテンツから保護するための強固なセキュリティ制御を提供すると同時に、キャッシュの改善による読み込み時間の短縮によるユーザーエクスペリエンスの向上にもつながります。
メリット

簡単な API リクエストを使用して画像をリアルタイムで変換および最適化し、ブラウザーの機能に基づいて最も効率的な形式を提供し、最適なファイルサイズと品質を確保します。
元の画像のみを保存し、必要に応じてバリアントを生成できるため、同じ画像の複数のバージョンが不要になり、ストレージコストを大幅に削減できます。
URL 署名、リクエスト検証、コンテンツ管理機能を使用してビジュアルアセットを保護すると同時に、画像配信に対するきめ細かなアクセス制御を維持できます。
サーバーレスアーキテクチャでさまざまな負荷を自動的に処理し、インフラストラクチャを管理しなくても、トラフィックが急増しても一貫したパフォーマンスを実現できます。
技術的な詳細情報

このアーキテクチャは、実装ガイドとそれに付属する AWS CloudFormation テンプレートを使用して自動的にデプロイできます。
ステップ 1
Amazon CloudFront ディストリビューションは、イメージ処理のコストとその後のイメージ配信のレイテンシーを削減するためのキャッシュレイヤーを提供します。CloudFront ドメイン名は、イメージハンドラー API にキャッシュアクセスを提供します。
ステップ 2
Amazon Simple Storage Service (Amazon S3) オブジェクト AWS Lambda アクセスポイント (ラージオブジェクトデプロイ) または Amazon API Gateway (API Gateway デプロイ) はエンドポイントリソースとして機能し、Lambda 関数をトリガーします。
ステップ 3
Lambda 関数はお客様の既存の S3 バケットから画像を取得し、シャープを使用して変更された画像を生成します。
ステップ 4
ソリューションで作成された S3 バケットは、イメージを保存するために顧客が作成した S3 バケットとは別にログストレージを提供します。Deploy Demo UI テンプレートパラメータに「はい」 (デフォルトエントリ) を入力すると、ソリューションはオプションのデモ UI を保存するために別の S3 バケットをデプロイします。
ステップ 5
(オプション) 「署名テンプレートを有効にする」パラメータに「はい」を入力すると、Lambda 関数は既存の AWS Secrets Manager のシークレットからシークレット値を取得して署名を検証します。詳細については、「スタックの起動」 を参照してください。
ステップ 6
(オプション) スマートクロップまたはコンテンツモデレーション機能を使用する場合、Lambda 関数は Amazon Rekognition を呼び出して画像を分析し、結果を返します。
ステップ 7
CloudFront 関数は、誤ったキャッシュミスを防ぐために、オリジンをトリガーする前にリクエストを正規化します。ラージオブジェクトデプロイでは、ラージオブジェクトデプロイを既存の SIH インターフェースにより近いものにするために、レスポンスに追加の機能が使用されます。
関連コンテンツ


製品設計とソフトウェア開発を手がける Perpetual は、スポーツ分野のある新しいスタートアップのクライアントと連携し始めたとき、柔軟性とコスト効率を兼ね備えた画像管理ツールのソリューションが必要であることにすぐに気づきました。 Perpetual は、その課題に最適な Serverless Image Handler を見つけました。
Serverless Image Handler (SIH) は、コンテンツに含まれるあらゆるイメージの単一バージョンを保存し、エンドユーザーのデバイスに基づいて実行時にさまざまなバージョンを動的に配信するために使用する AWS ソリューション実装です。