1

本格的なアプリの作成に取り掛かる前のテストとして、現在ディストリビューションなしのS3(CloudFront)を使用してiOSアプリを作成しています。S3管理コンソールでは、私が住んでいるシンガポールでバケットを作成したので、このデモではCloudFrontは実際には必要ありません。次のようなエンドポイントを設定する必要があります。

[s3Client setEndpoint: [AmazonEndpoints s3Endpoint: AP_SOUTHEAST_1]];

シンガポールを指すのはどれですか。エンドポイントは、バケットがデータを右に送信するために必要な場所ですか。(ユーザーがいる場所)

だから今私は2つの質問があります

  • CloudFrontを使用している場合、エンドポイントを設定する必要がありますか?iOSでCloudFrontを使用するにはどうすればよいですか?署名付きURLを生成してから何をしますか?

  • ユーザーがランダムな国でアプリを使用している場合、たとえば、(CloudFrontを使用して)設定する必要がある場合、どのエンドポイントに設定しますか?ロケールを介して現在の国を検索し、最も近いエンドポイントを検索しますか?

ありがとう!

4

2 に答える 2

5

CloudFrontのファイルのセットは、「ディストリビューション」と呼ばれます。ディストリビューションを設定するときは、1つ以上の「オリジン」を指定します。これは、ユーザーに提供するファイルの正規のソースです。

あなたの場合、新しいディストリビューションを作成し、S3バケットをオリジンとして指定します。次に、アプリケーションでは、それを。http://xxxxxxx.cloudfront.net/hello.pngではなく:として参照しますhttp://mybucket.s3.amazonaws.com/hello.pnghello.pngCloudfrontは、誰かが最初にS3バケットをリクエストしてキャッシュしたときに、S3バケットから自動的にフェッチします。

CloudFrontは、ネットワークレイテンシーに基づいてルーティングすることにより、ユーザーに最も近いエッジロケーションを自動的に(ほぼ瞬時に)検出します。これらの計算を自分で行う必要はありません。

アプリでCloudFrontを使用する前に、ここにリストした警告を読むことをお勧めします。

于 2012-12-18T14:13:51.123 に答える
0

@jamiebに同意します。新しいCloudfrontディストリビューションを作成し、S3バケットをオリジンとして設定する必要があります。その後、s3バケットリンクを使用しなくなり、クラウドフロントリンクを使用して画像を表示します。Cloudfrontは、S3からイメージをプルし、決定した期間、キャッシュとして保存します。たとえば、同じ地域のさまざまな人が画像を絶えず見ている場合は、その地域の端の場所に画像をキャッシュする必要があるため、その地域の新しいユーザーが画像を検索すると、画像がはるかに速くなります。

于 2021-08-28T21:23:19.653 に答える