現在Amazon CloudFrontでホストしているS3バケットでホストされている静的ウェブアプリケーションがあります。旅行サイトですので、世界中のユーザーに早く使ってもらいたいです。また、ACM(Amazon Certificate Manager)でTLSを無料で使用したいと思っています。
これを行うためのベストプラクティスアーキテクチャは何ですか?ディスカッションを開始したり、自由回答式の質問をしたりするつもりはありません。聞いてください。
DNSがどのように機能するかはあまり知りません。間違っている場合は修正してください。 GoDaddy DNSレコードを2つのGoDaddy NS servers/addresses/domains/whatever-they-areに持っている場合、香港のユーザーが私のウェブサイトにアクセスしたいときはいつでも、それらのGoDaddy DNSサーバーに連絡するには、どこにいても、CloudFrontのDNSサーバーに連絡してから、実際に最も近いCloudFrontサーバーに連絡して、超高速でローカルにキャッシュされた私のウェブサイトのコピーを取得しますか?
ご想像のとおり、これは私のサイトへのアクセスを遅くし、CloudFrontを使用する目的を最初から打ち消してしまうと思います。これは有効な懸念事項ですか?これはどのように設定すればよいですか? Route 53は事態を改善または悪化させますか?
ドメインがGoDaddyに登録されているが、DNSにRoute53を使用している場合-問題ありません。私の回答の短いバージョンは、それがそれを行うための最速/最良の方法です。
DNSが機能する方法を以下に示します。私が正しくない場合は、編集したり、回答を削除したりできます。
ブラウザは、GoDaddy DNSサーバーを使用して、ドメインのDNSを検索します。 GoDaddyへのDNSルックアップを実行してCNAME(AWS CloudFront IPのエイリアス)を取得するには、20〜200ミリ秒かかる場合があります。次に、最初のDNSルックアップの結果の別のDNSルックアップがAWS DNSサーバーに対して行われます。これは、おそらく10〜40ミリ秒のAレコード/ IPアドレスを返します。したがって、はい、2つのDNSルックアップがあります。
DNSサーバーは階層構造になっているため、ローカルDNSサーバーに必要なレコードがない場合は、さらに時間がかかる可能性があります。
Route53 DNSレコードがある場合、最初のDNSルックアップはより高速になります。 CloudFlareには優れた無料枠があり、非常に高速で分散されたDNSシステムも備えています。
小さな問題の1つは、CNAMEをドメインのルート(つまり、example.com)に置くことはできませんが、サブドメイン(つまり、www.example.com)には置くことができるということです。 Route53とCloudFlareの両方に回避策があります。 GoDaddy DNSを使用している場合、どのように機能するかわかりません。カスタム機能の場合もあれば、ドメインのルートでリクエストをリッスンして、wwwサブドメインに301リダイレクトする場合もあります。それはまた別のホップです。
ショートバージョン:Route53を最適に使用します costs 1か月あたり50c + 100万ルックアップあたり40セント。