HOME ブログ グロースハック Webサイト高速化 簡単にできる高速化 – リソースの先読み – Resource Hintsのやり方

簡単にできる高速化 – リソースの先読み – Resource Hintsのやり方

speed-up speed-up

Resource Hintsってご存知ですか?

Google PSIや Lighthouse等眺めてていつも思うのが、
「スコア安定しない、、」です。
「90以上いったーやったー」と思ってたら、色々スコア判定基準が変わってて60とかになってます。

その度にいろいろ考えるのですが、今回考えるのは、Resource Hints です。

Resource Hintsってなに?

調べ段階の備忘録記事なので間違いあるかもしれませんが、Resource Hintsとはその名の通り、リソースを先読みしてページの高速化・パフォーマンスの向上を目指す、というものです。

リソースの優先度付けを行い、ブラウザに優しい読み込みをしようということです。

dns-prefetch、preconnect、prefetch、prerender、4つの要素から構成されている

Resource Hintsには4つの機能があります。

もちろんこれらそれぞれの機能は違いますが、リソースを先読みしてパフォーマンス向上を目指す機能には変わりません。

使い方は簡単です。

link要素を利用してリソースの先読みをします。

<link rel="dns-prefetch" href="https://jajaaan.co.jp">

対応ブラウザは?

現状、種類によりますがあまり多くはなさそうです。
caniuseで確認しましょう。
Resource Hintsのブラウザ対応状況

dns-prefetch

こちらはDNSルックアップ、つまり外部からのリソース読み込みの時に、事前に名前解決して早くしよう!というものです。

<link rel="dns-prefetch" href="https://jajaaan.co.jp">

preconnect

connect(TCPハンドシェイク、TLSネゴシエーションなど)を事前に処理しようというものです。

<link rel="preconnect" href="//cdn.jajaaan.co.jp" crossorigin>

どうやら現在IE11以外ではサポートされていないようです。

prefetch

画像やCSSのリソースを予めダウンロードし、キャッシュに格納します。

as属性はオプションです。指定できるas属性の値は以下のようなものになります。
audio、video、track、script、style、font、image、fetch、worker、embed、object、document

<link rel="prefetch" href="//jajaaan.co.jp" as="html" crossorigin="use-credentials">
<link rel="prefetch" href="/library.js" as="script">

prerender

prerenderはリンク先のページをダウンロードし、バックグラウンドでDOM構築、JavaScript実行を行います。(GA除く)

<link rel="prerender" href="//jajaaan.co.jp/next-page.html">
SHARE !

TAG