は私が読んでAWSラムダ、S3とCloudFrontを(CF)についてのビデオを見ていました。ここでは、雲の雲とより一般的なCDNの概念を理解しているかどうかを確認したいと思います。私はCloudFrontがうまくいったのですか? labmdaは、S3、CloudFrontを
目的:私は、CFを介して自分のアプリから画像を提供したいと思います。私はawsラムダ関数を展開するつもりです。私が描いているシナリオでは、私のラムダ関数は単なる端点を持つ単純なフラスコアプリです。画像アップロードを実装するPOSTエンドポイント(ファイルからchecsumを作成し、ファイルチェックサムがすでにs3にあるかどうかを確認する - 保存するかしないかを指定)イメージのサイズ変更は、引数がクエリ文字列で指定されている場合にのみ実行されます。すべての画像が保存されます(オリジナル、サイズ変更、回転など)。 S3はCFの起源です。
デプロイメント:私はPythonを使用しています - zappaをデプロイメントツールとして使用したいと思います。
例題:
午前8時: ユーザーオーストラリアから画像をアップロードしています。以前に画像がありませんでしたので、S3に保存されて返されます。
9:00同じユーザーが画像のサムネイルを要求しています。イメージのサイズが変更され、返されます。ここでは、イメージのサイズ変更要求(たとえばhttps://app.org/resize/image1.jpeg?width=80&height=80)がクラウドフロントのオーストラリアのエッジノードにレスポンス(image.jpg 80x80)と共に保存されていると仮定します。
10:00ユーザーは同じクエリ文字列で同じサムネイルを要求しています。ユーザーはオーストラリアのクラウドフロントエッジキャッシュからimage.jpg 80x80を取得します。
私はそれを正しくしましたか?
OK。私は部分的にあなたの要点を得ましたが、まだいくつかのことは日陰です。 – scagbackbone
aws lambda(aws api gateway経由の私のフラスコアプリ)は次のようにカウントされます: ''オリジナルはあなたのCFからリクエストを処理できるアプリケーションサーバーでなければなりませんか? ' 私はおそらく2つのエンドポイントを持っています。アップロード用と2番目のエンドポイントは、画像がある場合は画像を返す「日陰の」GET、サムネイルが要求された場合はサイズを変更して返します。 – scagbackbone