運営サイトのPV数も順調に伸びてきてサイトが軌道に乗ってきた。
でも最近表示が遅いんだよな...
と体感できるくらい表示が遅く感じることはありませんか?
ページビューが伸びてきてからの現象であれば、パフォーマンスの良いレンタルサーバーに乗り換えする時期かもしれません。
スマホで閲覧する訪問者は、読み込みに3秒以上かかると40%もの閲覧者がページが表示される前に離脱するというデータがあります。
だから表示速度の低下はサイト運営者にとって死活問題なんです。
それで今回は、レンタルサーバーをスムーズに乗り換える方法の1つとして、
DNSのTTLを活用する方法について書いていきたいと思います。
目次
DNSのTTLってなに?

お名前.comのDNSレコードに、TTLという項目があって「3600」と表示されているのをご存知ですか?
お名前.comによるTTLの説明
Time To Liveの略称。パケットの有効期間を表す値となり、数値が小さいほどレコードの保持時間が短くなります。60~86400 の範囲で設定が可能です。
【ドメイン】TTL設定とは?TTL値に設定可能な値は?
お名前.comのヘルプページに書かれたTTLの説明です。
でもどんな時に、どのように設定すればいいのかというところまでは書かれていないので補足したいと思います。
値はドメイン情報のキャッシュ期間
TTLでセットされた値(秒)はレコード情報のキャッシュ期間。
TTLに「3600」という値は、レコードの内容を時間(60秒 * 60分)キャッシュするという意味になります。
TTLの値を変更するケース
サーバー移行や移設でIPアドレス変更する前後にTTLの値を変更します。
TTLの値は「小さくする」のか「大きくする」のか、どっちだと思いますか?
TTLを意識せず移行
例えば下の表のように、TTLのことを意識せず「移行後」の「VALUE」のIPアドレスのみを変更したとしましょう。
ホスト名 | TYPE | TTL | VALUE | |
---|---|---|---|---|
移行前 | www | A | 3600 | 192.168.1.5 |
移行後 | www | A | 3600 | 172.25.45.5 |
最長1時間は移行前の「192.168.1.5」にアクセスすることになります。
いろいろ端折って簡単に理由を書くと、
PCなどクライアントが参照しているキャッシュDNS(フルサービスリゾルバー)が最初の問い合わせから1時間レコードの情報をキャッシュするからなんです。
サーバー移行前はTTL値を「小さく」
先ほどの問題、TTLの値は「小さくする」のか「大きくする」のかは、
「小さくする」が正解です。
TTLの値を小さくすることで、キャッシュされる時間を短くすることができます。
つまり世界中のキャッシュDNSサーバーへの伝搬を短縮することができます。
TTLの設定例
実際にTTLの値をどのくらいに設定すればいいのか推奨値を示します。
通常時
TTL 3600 〜 86400
お名前ドットコムではデフォルト値は「3600」です。
キャッシュ期間を長くすれば、名前解決の問い合わせを減らせることから「86400」(60秒 * 60分 * 24時間)に設定することが多いです。
推奨の範囲は3600から86400です。
移行前
TTL 60
サーバー移行前、TTL 86400の場合は24時間前までにTTLの値を小さくします。
TTL値を「60 」にすると新旧サーバーの切り替えがスムーズ。
DNSの「伝搬待ち」とか「浸透待ち」に悩まされることはほぼ無くなると思います。
移行後
TTL 60 〜 600
あくまでも目安なのですが、移行直後は60から600がお勧めです。
移行直後にTTL 86400のような大きな値にすると、その後に不具合が見つかり旧サーバーに切り戻しとなった時が大変なので注意してください。
移行が完全に終わった後に通常時の3600から86400に設定します。
コメント