WordPressサイトを高速化するためにDNSルックアップを減らす方法
公開: 2023-04-29かなりの最適化を行い、Core Web Vitals は良好に見えます。
しかし、DNS ルックアップに注意を払いましたか?
DNS ルックアップを減らすことは、ブラウザーがページをより高速にレンダリングできるようにする速度最適化戦略です。 その結果、サイトのパフォーマンスとユーザー エクスペリエンスが向上します。
残念ながら、DNS ルックアップは、多くの Web サイト所有者が見落としている要素です。
しかし、あなたではありません!
この記事を読み終える頃には、次のことがわかるでしょう。
- DNS ルックアップとは何ですか?
- DNS ルックアップがサイト速度に与える影響
- 良好な DNS 応答時間とは?
- サイトの DNS ルックアップの応答時間を確認する方法
- DNS ルックアップを減らす方法
始めましょう!
DNS ルックアップとは何ですか?
つまり、DNS ルックアップは、特定の Web サイト URL の正しい IP アドレスを見つけるプロセスです。
ただし、プロセス全体を理解するには、一歩下がって、DNS の略を説明する必要があります。
DNS (ドメイン ネーム システム) は、ニトロパック.io のような人が読めるドメイン名を IP アドレスに変換するシステムです。IP アドレスは、コンピューターがインターネット上のサーバーを見つけて通信するために使用されます。
DNS がなければ、アクセスしたいすべての Web サイトの IP アドレスを記憶する必要があり、これは非現実的で不便です。
ドメイン名を IP アドレスに変換するプロセス全体を DNS ルックアップと呼びます。
多くの Web 専門家は、これを電話帳で電話番号を検索することにたとえています。 IP アドレスは電話番号で、DNS サーバーは電話帳です。
もちろん、実生活では Web で「検索」を行うのは私たちですが、その責任はブラウザーにあります。
DNS ルックアップがサイト速度に与える影響
Web サイトにアクセスするか、ユーザーがあなたの Web サイトを読み込もうとすると、ブラウザは DNS ルックアップが必要なすべてのリソースを識別し、ルックアップが完了するまでダウンロード プロセスを一時停止します。
そのため、Web サイトで必要な検索回数が多いほど、ブラウザーがページを表示するのに時間がかかります。
全体のプロセスは次のようになります。
- ウェブブラウザにドメイン名を入力すると、
- コンピューターはまずキャッシュをチェックして、そのドメイン名の IP アドレスが既にあるかどうかを確認します。
- そうでない場合は、通常はインターネット サービス プロバイダー (ISP) によって提供される DNS リゾルバーに要求を送信します。
- リゾルバーはキャッシュをチェックし、IP アドレスがない場合は、ドメインの権限のある DNS サーバーに到達するまで、一連の DNS サーバーに要求を転送します。
- ドメインの権威 DNS サーバーは、そのドメイン名に正しい IP アドレスを提供する責任があります。
- 権限のある DNS サーバーが IP アドレスで応答すると、その IP アドレスはコンピューターとリゾルバーによってキャッシュされ、そのドメイン名の今後の検索が高速になります。
簡単に言えば:
DNS ルックアップを減らすと、訪問者の読み込み時間が短縮されます。
しかし、その方法を説明する前に、いくつかのベンチマークを設定する必要があります。
良好な DNS 応答時間とは?
一般に、100 ミリ秒未満が適切な DNS 応答時間と見なされます。
もちろん、すべての Web サイトは独自のものであるため、すべての人が努力すべき正確なスコアはありません。
ただし、サイトの DNS 応答時間が短いほど良い結果が得られます。
サイトの DNS ルックアップの応答時間を確認する方法
いくつかのベンチマークを設定することは、DNS ルックアップの最適化の旅を始める最善の方法です。 GTmetrix や WebPageTest などの一般的な Web パフォーマンス テスト ツールは、これを行うのに役立ちます。
それらをどのように使用できるかを詳しく見てみましょう。
GTmetrix
GTmetrix で DNS ルックアップを確認するには、まず Web サイトの URL を入力する必要があります。
レポートが完了したら、[ウォーターフォール] タブに移動します。 特定のファイル リクエストにカーソルを合わせると、DNS ルックアップにかかる時間が表示されます。 青いバーでラベル付けされ、ミリ秒単位で測定されます。
WebPageTest
WebPageTest を使用してサイトをテストする最初のエクスペリエンスは、GTmetrix に似ています。 まず、サイトの URL を入力します。
レポートが完了したら、ドロップダウン メニューから [詳細] ビューに移動します。
WebPageTest の優れた点は、リクエストの詳細をすばやく概観できることです。 「DNS ルックアップ」列をクリックして、応答時間が長い順に並べ替えることもできます。
こうすることで、最も優先度の高い最適化リソースを知ることができます。
最適化といえば、サイトの DNS ルックアップを減らす方法を見てみましょう。
WordPressでDNSルックアップを減らす方法
免責事項:プラグイン関連の提案は別として、他のすべての戦略は、構築されているプラットフォームに関係なく、あらゆる種類の Web サイトに適用できます。
DNS の仕組みを理解し、いくつかのパフォーマンス ベンチマークを設定したので、DNS ルックアップを減らす方法に関するいくつかの推奨事項に進みましょう。
1. より高速な DNS プロバイダーに移行する
DNS ルックアップの回数を減らすために最初にできることの 1 つは、より高速な DNS プロバイダーを見つけることです。
ほとんどの Web サイト所有者は、ドメイン レジストラーが提供する無料の DNS に依存しています。 残念ながら、Web ホスティング オプションと同様に、無料が常に最適とは限りません。 業界の調査に時間を費やすと、より高速で最適化されたプロバイダーがあることがわかります。
実際、DNSPerf を使用してプロバイダーの速度を確認できます。
Cloudflare、DigitalOcean、Bunny CDN などの大規模プロバイダーが最高ランクにランクされていることは当然のことです。 それらはすべて、低遅延環境の DNS 用に特別に設計された大規模なインフラストラクチャを備えています。
または、新しいプロバイダーにすぐにジャンプしたくない場合は、DNS 速度ベンチマークを使用して、現在のプロバイダーのパフォーマンスを確認できます. ドメイン名を入力するだけで、それがどのように機能するかを確認できます。
次に、ビジネスがローカルで運営されているかグローバルに運営されているかに応じて、ビジネスから離れることを決定できます。
2. ホスト名の数を減らす
より高速で優れた DNS プロバイダーに切り替えると、必然的にパフォーマンスが向上しますが、究極の解決策ではありません. 追加の作業を行う必要があります。
次の最適化手法は、ホスト名の数を減らすことです。
前述のテスト ツールのいくつかを使用して Web サイトを実行します。 DNS ルックアップをトリガーするすべてのリソースを調べます。
リストを監査して、すべてのリソースが Web サイトにとって重要かどうかを判断します。 そうでない場合は、不要なものを削除します。 あなたが滞在する必要があるリソースは次のとおりです。
- 統合します。複数のサブドメインでリソースをホストする代わりに、それらを 1 つのドメインに統合します。 これにより、ホスト名の数が減るため、DNS ルックアップの数が減ります。
- コンテンツ配信ネットワーク (CDN) を使用します。 CDN は、サーバーのネットワークを介してリソースを提供することで、ホスト名の数を最小限に抑えることができます。 この方法では、サーバーからリソースを要求するのではなく、ユーザーは最寄りの CDN サーバーからリソースを取得します。 このアプローチにより、待ち時間が短縮され、Web サイトの速度が向上する可能性があります。
または、次のことができます…
3.サードパーティのリソースをローカルでホストする
サードパーティのスクリプトをローカルでホストすると、これらのリソースが訪問者にどのように配信されるかを制御しながら、DNS ルックアップを減らすことができます。 さらに、この手法を使用して、特定のリソースがキャッシュされる期間を定義できます。
Web サイトが読み込むすべてのサードパーティ リソースを調べるには、PageSpeed Insights テストを実行し、「サードパーティ コードの影響を減らす」という警告を探します。 クリックすると、ドロップダウンが開き、すべてのリソースが表示されます。
Web パフォーマンス レポートに目を通し、ローカルでのホスティングに適したアセットを特定します。 それらをオリジンまたは CDN にダウンロードしてホストします。
「ローカルホスティングに適している」ことを強調したいと思います。
すべてのファイルをローカルでホストする必要はありません。 たとえば、定期的に更新する必要があるサードパーティのスクリプトは、古いバージョンを提供するリスクがあるため、適していません。
ただし、Google アナリティクスのような更新頻度の低いスクリプトは、この仕事に最適です。
4. DNS キャッシングを活用する
DNS キャッシングは、Web キャッシングの仕組みに似ています。 DNS キャッシングを適切に適用すると、ブラウザが特定のサイト要素を必要とするたびに DNS ルックアップを実行しなくなります。
DNS サーバーがキャッシュからブラウザの要求を満たすことができるかどうかは、DNS キャッシュの長さに依存します。 キャッシュの長さは、TTL または time-to-live 値と呼ばれるものによって決まります。
リソースの TTL 値が高いほど、ブラウザが DNS ルックアップを実行する可能性は低くなります。
DNS キャッシュの長さを改善するために、ドメイン レジストラーまたはサードパーティの DNS プロバイダーで TTL 値を変更できます。 以下は、いくつかの一般的な TTL 値です。
- 300 秒 = 5 分
- 1800 秒 = 30 分
- 3600 秒 = 1 時間
- 43200 秒 = 12 時間
- 86400 秒 = 24 時間
5. DNS プリフェッチを設定する
DNS プリフェッチは、特定のリソースをどのように処理する必要があるかをブラウザに伝えるリソース ヒントです。 一部のファイルに追加すると、ユーザーがページを閲覧している間、ブラウザがバックグラウンドで DNS ルックアップを実行できるようになります。
したがって、ユーザーがプリフェッチされたリソースを含むページにアクセスしたときに、DNS ルックアップが発生するのを待つ必要はありません。 その結果、ページの読み込みが速くなり、エクスペリエンスが向上します。
dns-prefetchを追加するには、次のコードをファイルのヘッダーに追加します。
href値を適切な URL に置き換えることを忘れないでください。
6. JavaScript の読み込みを遅らせる
JavaScript ファイルは、レンダリングをブロックするリソースと見なされます。 これは、ブラウザーがそれらに遭遇した場合、他の処理を行う前にそれらをダウンロード、解析、および実行する必要があることを意味します。
JavaScript の読み込みを遅らせても、必ずしも DNS ルックアップの数が減るとは限りません。 ただし、最も重要な (アバブ ザ フォールド) リソースを最初に読み込み、必要になるまで重要でないリソースを遅らせることで、サイトの知覚パフォーマンスが向上します。
JS を遅延ロードするには、 defer 属性とasync属性を使用します。 詳細については、こちらをご覧ください。
遅延ロードできる JS ファイルの良い例は Google アナリティクスです。
コードを 1 行も書かずに JavaScript を遅延ロードします。 NitroPack をリスクなしで入手 →
7. DNSルックアップを増加させるプラグインを避ける
一般に、いくつかのタイプの WordPress プラグインが DNS ルックアップの数を増やすことが知られています。
- ソーシャル メディア共有プラグイン。 これらのプラグインは、Web サイトに共有ボタンを追加しますが、ソーシャル メディア Web サイトから追加のリソースをロードすることが多く、追加の DNS ルックアップが発生する可能性があります。
- 広告プラグイン。 Google AdSense や Amazon Associates などの広告プラグインは、サードパーティの Web サイトから外部スクリプトとリソースを読み込みます。 これらのリソースでは、ドメイン名を解決するために追加の DNS ルックアップが必要になる場合があります。
- お問い合わせフォームのプラグイン。 お問い合わせフォームでは、フォームの送信を表示および処理するためのスクリプトとリソースを読み込むために、追加の DNS ルックアップが必要になることがよくあります。
もちろん、これはすべてのプラグインを削除する必要があるという意味ではありません。 訪問者を変換するための適切なツールがなければ、高速な Web サイトは何の価値もありません。
一部の機能が重複している可能性があるため、新しいプラグインを追加するときは注意してください。
また、実装の前後に常にテストを行い、Web サイトを定期的に監査して、役に立たなくなったプラグインを削除することを忘れないでください。
NitroPack で DNS ルックアップを減らす
契約は次のとおりです。
より高速な DNS プロバイダーへの切り替え、ローカルでホストするリソースの決定、および DNS キャッシングの実装は、自分で行うか、ホスティング プロバイダーの助けを借りて行う必要がある戦略です。
それ以外の場合は、NitroPack を使用できます。
NitroPack は、すぐに使用できる 35 以上の機能を提供する Web パフォーマンス最適化ソリューションです。 DNS ルックアップを減らすという点では、以下に頼ることができます。
- Cloudflareが提供するビルトインCDN
- 自動 JavaScript 遅延読み込み
- コードの最適化
また、オールインワン ソリューションであるため、サイトの DNS ルックアップを増加させる (そして請求書を減らす) 速度最適化プラグインをすべて簡単に置き換えることができます。
しかし、最良の部分は次のとおりです。
NitroPack を使用すると、完全なページ速度最適化スイートを取得して、次のことを実現できます。
これに:
ボタンをクリックするだけで!