ãã
ããã«ãããã®ã¯ãå®è£ ãéåžžã«ç°¡åã ãšããããšã§ãã XNUMXã€ã®ã¿ã°ãã©ãŠã¶ã«äºåã¢ã¯ã·ã§ã³ãå®è¡ããã³ãã³ããäžããŸãã
<link rel="prefetch" href="/ja/style.css" as="style" />
<link rel="preload" href="/ja/style.css" as="style" />
<link rel="preconnect" href="https://example.com" />
<link rel="dns-prefetch" href="https://example.com" />
<link rel="prerender" href="https://example.com/about.html" />
ããããäœãããã®ãããã€äœ¿çšããã®ããç°¡åã«èª¬æããŸãããã
ãžã£ã³ãå
:
ããªããŒã
<link rel= "preload">
ãã©ãŠã¶ã«ãªãœãŒã¹ (ã¹ã¯ãªãããã¹ã¿ã€ã«ã·ãŒããªã©) ãã§ããã ãæ©ãããŒãããŠãã£ãã·ã¥ããããã«æ瀺ããŸãã ããã¯ãããŒãžãèªã¿èŸŒãŸããŠããæ°ç§åŸã«ãªãœãŒã¹ãå¿
èŠã«ãªããããã»ã¹ãé«éåãããå Žåã«äŸ¿å©ã§ãã
ãã©ãŠã¶ã¯ãèªã¿èŸŒã¿åŸã«ãªãœãŒã¹ã«å¯ŸããŠäœãè¡ããŸããã ã¹ã¯ãªããã¯å®è¡ããããã¹ã¿ã€ã«ã·ãŒããé©çšãããŸããã ãªãœãŒã¹ã¯åçŽã«ãã£ãã·ã¥ããããªã¯ãšã¹ãã«å¿ããŠããã«å©çšã§ããããã«ãªããŸãã
æ§æ
<link rel="preload" href="/ja/style.css" as="style" />
href
ããŠã³ããŒããããªãœãŒã¹ãæããŸãã
as
ãã©ãŠã¶ã§ããŠã³ããŒãã§ãããã®ã§ããã°äœã§ãæ§ããŸããã
style
ã¹ã¿ã€ã«ã·ãŒãã®å Žåãscript
ã¹ã¯ãªããã®å Žåãfont
ãã©ã³ãã®å Žåãfetch
ã䜿çšããŠããŒãããããªãœãŒã¹ã®å Žåfetch()
ãŸãã¯XMLHttpRequest
,- å®å
šãªãªã¹ããèŠã
MDN 㧠.
å±æ§ãæå®ããããšãéèŠã§ã as
â ããã¯ããã©ãŠã¶ãããŠã³ããŒãã®åªå
é äœãé©åã«èšå®ããã¹ã±ãžã¥ãŒã«ããã®ã«åœ¹ç«ã¡ãŸãã
ãã€äœ¿çšããã
ãªãœãŒã¹ãè¿ãå°æ¥ã«å¿ èŠã«ãªãå Žåã¯ãããªããŒãã䜿çšããŸãã äŸãã°ïŒ
- å€éšãã¡ã€ã«ããã®éæšæºãã©ã³ã:
<!-- index.html --> <link rel="stylesheet" href="index.css" /> /* index.css */ @font-face { src: url('comic-sans.woff2') format('woff2'); }
ÐПÑЌПлÑаМОÑ
comic-sans.woff2
ããŠã³ããŒããšè§£æåŸã«ã®ã¿ããŒããéå§ãããŸãindex.css
ã é·ãåŸ ããããããšãé¿ããããã«ã次ã®ã³ãã³ãã䜿çšããŠãã©ã³ããæ©ãã«ããŠã³ããŒãã§ããŸãã<link rel= "preload">
:<link rel="preload" href="comic-sans.woff2" as="font" />
- ã¢ãããŒãå¥ã«ã¹ã¿ã€ã«ãåãããš
éèŠãªCSS ã¯ãªãã£ã«ã« (å³æã¬ã³ããªã³ã°çš) ãšéã¯ãªãã£ã«ã«ã® XNUMX ã€ã®éšåã«åããããŸãã<style> /* Inlined critical styles */ </style> <script> /* Custom JS that starts downloading non-critical styles */ loadCSS('/app/non-critical.css'); </script>
ãã®ã¢ãããŒãã§ã¯ãéèŠã§ã¯ãªãã¹ã¿ã€ã«ã¯ JavaScript ã®å®è¡æã«ã®ã¿èªã¿èŸŒã¿ãéå§ããŸããããã¯ã¬ã³ããªã³ã°ã®æ°ç§åŸã«çºçããå¯èœæ§ããããŸãã JS ã䜿çšããã®ãåŸ ã€ä»£ããã«
<link rel= "preload">
ããæ©ãããŠã³ããŒããéå§ããã«ã¯:<style> /* Inlined critical styles */ </style> <link rel="preload" href="/ja/app/non-critical.css" as="style" /> <script> /* Custom JS that starts downloading non-critical styles */ loadCSS('/app/non-critical.css'); </script>
ããªããŒããé床ã«äœ¿çšããªãã§ãã ããã ãã¹ãŠãç¶ããŠèªã¿èŸŒãã§ãããµã€ãã¯éæ³ã®ããã«é«éåããããã§ã¯ãªããéã«ãã©ãŠã¶ãæ£ããåäœãèšç»ã§ããªããªããŸãã
ããªãã§ãããšæ··åããªãã§ãã ããã 䜿ã£ãŠã¯ãããŸãã <link rel= "preload">
ããŒãžã®èªã¿èŸŒã¿çŽåŸã«ãªãœãŒã¹ãå¿
èŠãªãå Žåã 次ã®ããŒãžãªã©ãåŸã§å¿
èŠãªå Žåã¯ã次ã䜿çšããŸãã <link rel= "prefetch">
.
现éš
ããã¯å¿
é ã®ã¿ã°ã§ã ä»ã®ãã¹ãŠã®ã¿ã°ãšã¯ç°ãªãããã©ãŠã¶ãŒã«ãã£ãŠå®è¡ãããŸã (ãã©ãŠã¶ãŒããµããŒãããŠããå Žå)ã ããªããŒãé¢é£ã ãã©ãŠã¶ã¯ãã§æå®ããããªãœãŒã¹ãããŠã³ããŒãããå¿
èŠããããŸãã <link rel="preload">
ã ãŸããäœéæ¥ç¶ã§å®è¡ãããŠããå Žåãªã©ãããªããŒããç¡èŠãããå ŽåããããŸãã
åªå
床ã ãã©ãŠã¶ã¯éåžžãæãéèŠãªãªãœãŒã¹ãæåã«ããŒãããããã«ãããŸããŸãªãªãœãŒã¹ (ã¹ã¿ã€ã«ãã¹ã¯ãªããããã©ã³ããªã©) ã«ç°ãªãåªå
é äœãå²ãåœãŠãŸãã ãã®å Žåããã©ãŠã¶ã¯å±æ§ã«ãã£ãŠåªå
床ã決å®ããŸãã as
ã Chromeãã©ãŠã¶ã®å Žåã¯ã次ã®ããã«èŠãããšãã§ããŸã
ããªãã§ãã
<link rel= "prefetch">
ããã¯ã°ã©ãŠã³ãã§ãªãœãŒã¹ (ã¹ã¯ãªãããã¹ã¿ã€ã« ã·ãŒããªã©) ãããŠã³ããŒãããŠãã£ãã·ã¥ããããã«ãã©ãŠã¶ãŒã«èŠæ±ããŸãã èªã¿èŸŒã¿ã¯äœãåªå
床ã§è¡ããããããããéèŠãªãªãœãŒã¹ã«å¹²æžããŸããã ããã¯ã次ã®ããŒãžã§ãªãœãŒã¹ãå¿
èŠã§ãäºåã«ãã£ãã·ã¥ããŠããããå Žåã«äŸ¿å©ã§ãã
ããã§ãããã©ãŠã¶ã¯ããŒãåŸã«ãªãœãŒã¹ã«å¯ŸããŠäœãè¡ããŸããã ã¹ã¯ãªããã¯å®è¡ããããã¹ã¿ã€ã«ã·ãŒããé©çšãããŸããã ãªãœãŒã¹ã¯åçŽã«ãã£ãã·ã¥ããããªã¯ãšã¹ãã«å¿ããŠããã«å©çšã§ããããã«ãªããŸãã
æ§æ
<link rel="prefetch" href="/ja/style.css" as="style" />
href
ããŠã³ããŒããããªãœãŒã¹ãæããŸãã
as
ãã©ãŠã¶ã§ããŠã³ããŒãã§ãããã®ã§ããã°äœã§ãæ§ããŸããã
style
ã¹ã¿ã€ã«ã·ãŒãã®å Žåãscript
ã¹ã¯ãªããã®å Žåãfont
ãã©ã³ãã®å Žåãfetch
ã䜿çšããŠããŒãããããªãœãŒã¹ã®å Žåfetch()
ãŸãã¯XMLHttpRequest
,- å®å
šãªãªã¹ããèŠã
MDN 㧠.
å±æ§ãæå®ããããšãéèŠã§ã as
- ããã«ããããã©ãŠã¶ãããŠã³ããŒãã®åªå
é äœãæ£ããèšå®ããã¹ã±ãžã¥ãŒã«ãèšå®ã§ããããã«ãªããŸãã
ãã€äœ¿çšããã
ä»ã®ããŒãžãããªãœãŒã¹ãããŒãããã«ã¯ãå¥ã®ããŒãžã®ãªãœãŒã¹ãå¿ èŠã§ããããããªããŒãããŠãã®ããŒãžã®ã¬ã³ããªã³ã°ãé«éåãããå Žåã äŸãã°ïŒ
- ããªãã¯ãªã³ã©ã€ã³ ã¹ãã¢ãéå¶ããŠããããŠãŒã¶ãŒã® 40% ãããŒã ããŒãžãã補åããŒãžã«ç§»åããŸãã 䜿çš
<link rel= "prefetch">
ãCSS ããã³ JS ãã¡ã€ã«ãããŒãããŠè£œåããŒãžãã¬ã³ããªã³ã°ããŸãã - åäžããŒãžã®ã¢ããªã±ãŒã·ã§ã³ããããç°ãªãããŒãžã«ã¯ç°ãªãããã±ãŒãžãããŒããããŸãã ãŠãŒã¶ãŒãããŒãžã«ã¢ã¯ã»ã¹ãããšããªã³ã¯å ã®ãã¹ãŠã®ããŒãžã®ããã±ãŒãžãããªããŒãã§ããŸãã
ãã®ã¿ã°ã¯ããçšåºŠå®å šã«äœ¿çšã§ããå¯èœæ§ããããŸããã éåžžããã©ãŠã¶ã¯ããªãã§ãããæãäœãåªå é äœã§ã¹ã±ãžã¥ãŒã«ããããã誰ã«ãè¿·æããããŸããã ãŠãŒã¶ãŒã®ãã©ãã£ãã¯ãæ¶è²»ãããããè²»çšããããå¯èœæ§ãããããšã«æ³šæããŠãã ããã
æ¥ãã®ãªã¯ãšã¹ãã«ã¯å¯Ÿå¿ããŠãããŸããã 䜿ã£ãŠã¯ãããŸãã <link rel= "prefetch">
ãæ°ç§ä»¥å
ã«ãªãœãŒã¹ãå¿
èŠã«ãªãå Žåã ãã®å Žåã䜿çšããŸã <link rel= "preload">
.
现éš
ãªãã·ã§ã³ã®ã¿ã°ã ãã©ãŠã¶ã¯ãã®æ瀺ã«åŸãå¿ èŠã¯ãããŸããããæ¥ç¶ãé ãå Žåãªã©ã«ã¯ç¡èŠããå ŽåããããŸãã
Chrome ã§ã®åªå
é äœã Chromeã®å Žå <link rel= "prefetch">
éåžžã¯æå°ã®åªå
é äœã§å®è¡ãããŸã (ã
äºåæ¥ç¶
<link rel= "preconnect">
å°æ¥ã®æ¥ç¶ã»ããã¢ãããé«éåãããå Žåã«ããã©ãŠã¶ã«äºåã«ãã¡ã€ã³ã«æ¥ç¶ããããã«èŠæ±ããŸãã
ãã©ãŠã¶ãŒã¯ãæ°ãããµãŒãããŒã㣠ãã¡ã€ã³ãããªãœãŒã¹ãååŸããå Žåãæ¥ç¶ã確ç«ããå¿ èŠããããŸãã ããšãã°ãCDN ãã Google Fonts ã React ãã©ã³ããããŒãããå ŽåããŸã㯠API ãµãŒããŒããã® JSON å¿çããªã¯ãšã¹ãããå Žåã§ãã
æ°ããæ¥ç¶ã®ç¢ºç«ã«ã¯éåžžãæ°çŸããªç§ããããŸãã äžåºŠã§çµããã§ããããã¯ãæéãããããŸãã äºåã«æ¥ç¶ã確ç«ããŠãããšãæéãç¯çŽããããã®ãã¡ã€ã³ãããªãœãŒã¹ãããéãããŠã³ããŒãã§ããŸãã
æ§æ
<link rel= "preconnect" href="https://api.my-app.com" />
href
ã¯ãIP ã¢ãã¬ã¹ã決å®ãããã¡ã€ã³åã瀺ããŸãã ãã¬ãã£ãã¯ã¹(https://domain.com
) ãŸãã¯ãããªã (//domain.com
).
ãã€äœ¿çšããã
ããã«å¿ èŠã«ãªããã¡ã€ã³ã«äœ¿çšããŸã ããããéèŠãªã¹ã¿ã€ã«ãã¹ã¯ãªããããŸãã¯ç»åãããŠã³ããŒããããã®ã§ããããªãœãŒã¹ã® URL ããŸã ããããŸããã äŸãã°ïŒ
- ã¢ããªã±ãŒã·ã§ã³ããã¹ããããŠããå Žæ
my-app.com
ãããŠãAJAXãªã¯ãšã¹ããè¡ããŸãapi.my-app.com
: å ·äœçãªã¯ãšãªã¯ JS ããåçã«äœæããããããäºåã«ããããŸããã ããã§ã¯ãã¿ã°ã䜿çšããŠãã¡ã€ã³ã«äºåæ¥ç¶ããããšãéåžžã«é©åã§ãã - ã¢ããªã±ãŒã·ã§ã³ããã¹ããããŠããå Žæ
my-app.com
ãããŠGoogle Fontsã䜿çšããŠããŸãã ããã㯠XNUMX ã€ã®æé ã§ããŠã³ããŒããããŸãããŸããCSS ãã¡ã€ã«ããã¡ã€ã³ããããŠã³ããŒããããŸããfonts.googleapis.com
ã®å Žåããã®ãã¡ã€ã«ã¯æ¬¡ã®ãã©ã³ããèŠæ±ããŸããfonts.gstatic.com
ã ç¹å®ã®ãã©ã³ã ãã¡ã€ã«ãã©ã®ãã¡ã€ã«ããã®ãã®ã§ããããç¥ãããšã¯ã§ããŸããfonts.gstatic.com
CSS ãã¡ã€ã«ãèªã¿èŸŒããŸã§ã«å¿ èŠãšãªããããäºåã«ä»®æ¥ç¶ã®ã¿ãè¡ãããšãã§ããŸãã
ãã®ã¿ã°ã䜿çšããŠããµãŒãããŒãã£ã®ã¹ã¯ãªãããã¹ã¿ã€ã«ãå°ãé«éåããŸãã äºåã«ç¢ºç«ãããæ¥ç¶ã®ããã
䜿ããããªãã§ãã ããã æ¥ç¶ã®ç¢ºç«ãšç¶æã¯ãã¯ã©ã€ã¢ã³ããšãµãŒããŒã®äž¡æ¹ã«ãšã£ãŠã³ã¹ãã®ãããæäœã§ãã ãã®ã¿ã°ã¯æ倧 4 ïœ 6 åã®ãã¡ã€ã³ã«äœ¿çšããŸãã
现éš
ãªãã·ã§ã³ã®ã¿ã°ã ãã©ãŠã¶ã¯ãã®æ瀺ã«åŸãå¿ èŠã¯ãªããããšãã°ãå€ãã®æ¥ç¶ããã§ã«ç¢ºç«ãããŠããå Žåããã®ä»ã®å Žåã«ã¯ããã®æ瀺ãç¡èŠããŠãããã
æ¥ç¶ããã»ã¹ã«ã¯äœãå«ãŸããŸãã?ã åãµã€ãã«æ¥ç¶ããã«ã¯ããã©ãŠã¶ã¯æ¬¡ã®ããšãè¡ãå¿ èŠããããŸãã
- DNS解決ã ãµãŒããŒã® IP ã¢ãã¬ã¹ãæ€çŽ¢ (
216.58.215.78
) æå®ããããã¡ã€ã³å (google.com
). - TCPãã³ãã·ã§ã€ã¯ã ãã±ããã亀æ (ã¯ã©ã€ã¢ã³ã â ãµãŒã㌠â ã¯ã©ã€ã¢ã³ã) ããŠããµãŒããŒãšã® TCP æ¥ç¶ãéå§ããŸãã
- TLS ãã³ãã·ã§ã€ã¯ (HTTPS ãµã€ãã®ã¿)ã å®å šãª TLS ã»ãã·ã§ã³ãéå§ããããã® XNUMX ã©ãŠã³ãã®ãã±ãã亀æ (ã¯ã©ã€ã¢ã³ã â ãµãŒã㌠â ã¯ã©ã€ã¢ã³ã â ãµãŒã㌠â ã¯ã©ã€ã¢ã³ã)ã
泚: HTTP/3 ã§ã¯ãã³ãã·ã§ã€ã¯ ã¡ã«ããºã ãæ¹åãããé«éåãããŸããããŸã éã®ãã¯é ãã§ãã
DNSããªãã§ãã
<link rel= "dns-prefetch">
ããã«æ¥ç¶ããäºå®ã§ãæåã®æ¥ç¶ãé«éåãããå Žåã¯ããã©ãŠã¶ãŒã«äºåã«ãã¡ã€ã³ã® DNS 解決ãå®è¡ããããã«èŠæ±ããŸãã
ãã©ãŠã¶ãŒã¯ãæ°ãããµãŒãããŒã㣠ãã¡ã€ã³ãããªãœãŒã¹ãååŸããå Žåããã¡ã€ã³ã® IP ã¢ãã¬ã¹ã決å®ããå¿ èŠããããŸãã ããšãã°ãCDN ãã Google Fonts ã React ãã©ã³ããããŒãããããAPI ãµãŒããŒãã JSON å¿çããªã¯ãšã¹ããããããŸãã
æ°ãããã¡ã€ã³ããšã«ãDNS ã¬ã³ãŒãã®è§£æ±ºã«ã¯éåžžçŽ 20 ïœ 120 ããªç§ããããŸãã ããã¯ãç¹å®ã®ãã¡ã€ã³ããã®æåã®ãªãœãŒã¹ã®èªã¿èŸŒã¿ã«ã®ã¿åœ±é¿ããŸãããããã§ãé 延ãçºçããŸãã äºåã« DNS 解決ãå®è¡ãããšãæéãç¯çŽããããªãœãŒã¹ã®èªã¿èŸŒã¿ãéããªããŸãã
æ§æ
<link rel= "dns-prefetch" href="https://api.my-app.com" />
href
ã¯ãIPã¢ãã¬ã¹ãèšå®ãããã¡ã€ã³åã瀺ããŸãã ãã¬ãã£ãã¯ã¹(https://domain.com
) ãŸãã¯ãããªã (//domain.com
).
ãã€äœ¿çšããã
ããã«å¿ èŠã«ãªããã¡ã€ã³ã«äœ¿çšããŸã ãã©ãŠã¶ãäºåã«èªèããŠããªããªãœãŒã¹ãããããããŠã³ããŒãããŸãã äŸãã°ïŒ
- ã¢ããªã±ãŒã·ã§ã³ããã¹ããããŠããå Žæ
my-app.com
ãããŠãAJAXãªã¯ãšã¹ããè¡ããŸãapi.my-app.com
: å ·äœçãªã¯ãšãªã¯ JS ããåçã«äœæããããããäºåã«ããããŸããã ããã§ã¯ãã¿ã°ã䜿çšããŠãã¡ã€ã³ã«äºåæ¥ç¶ããããšãéåžžã«é©åã§ãã - ã¢ããªã±ãŒã·ã§ã³ããã¹ããããŠããå Žæ
my-app.com
ãGoogle Fontsã䜿çšããŠããŸãã ããã㯠XNUMX ã€ã®æé ã§ããŠã³ããŒããããŸãããŸããCSS ãã¡ã€ã«ããã¡ã€ã³ããããŠã³ããŒããããŸããfonts.googleapis.com
ã®å Žåããã®ãã¡ã€ã«ã¯æ¬¡ã®ãã©ã³ããèŠæ±ããŸããfonts.gstatic.com
ã ç¹å®ã®ãã©ã³ã ãã¡ã€ã«ãã©ã®ãã¡ã€ã«ããã®ãã®ã§ããããç¥ãããšã¯ã§ããŸããfonts.gstatic.com
CSS ãã¡ã€ã«ãèªã¿èŸŒããŸã§å¿ èŠãšãªããããäºåã«ä»®æ¥ç¶ã®ã¿ãè¡ãããšãã§ããŸãã
ãã®ã¿ã°ã䜿çšããŠããµãŒãããŒãã£ã®ã¹ã¯ãªãããã¹ã¿ã€ã«ãå°ãé«éåããŸãã äºåã«ç¢ºç«ãããæ¥ç¶ã®ããã
åæ§ã®ç¹åŸŽã«æ³šæããŠãã ãã
<link rel= "dns-prefetch"/>
О<link rel= "preconnect">
ã éåžžãåããã¡ã€ã³ã§ããããäžç·ã«äœ¿çšããããšã¯æå³ããããŸããã<link rel= "preconnect">
ãã§ã«å«ãŸããŠããŸã<link rel= "dns-prefetch"/>
ãªã©ãªã©ã ããã¯æ¬¡ã® XNUMX ã€ã®å Žåã«æ£åœåã§ããŸãã
- å€ããã©ãŠã¶ããµããŒãããŸãã?.
<link rel= "dns-prefetch" />
ã«ããæ¯æŽIE10ãšSafari5以é .<link rel= "preconnect">
ãã°ããã®éãChrome ãš Firefox ã§ãµããŒããããŠããŸããããSafari 11.1 ã§ã®ã¿è¿œå ãããŸãããIE/Edgeã§ã¯ãŸã ãµããŒããããŠããŸãã ã ãããã®ãã©ãŠã¶ããµããŒãããå¿ èŠãããå Žåã¯ã次ã䜿çšããŠãã ãã<link rel= "dns-prefetch" />
ã®ããã¯ã¢ãããªãã·ã§ã³ãšããŠ<link rel= "preconnect">
.- 4 ïœ 6 ãè¶ ãããã¡ã€ã³ãžã®æ¥ç¶ãé«éåãããã 鬌ãã£ã
<link rel= "preconnect">
æ¥ç¶ã®ç¢ºç«ãšç¶æã«ã¯ã³ã¹ãããããããã4 ïœ 6 ãè¶ ãããã¡ã€ã³ã§ã®äœ¿çšã¯ãå§ãã§ããŸããã<link rel= "dns-prefetch" />
æ¶è²»ãããªãœãŒã¹ãå°ãªããããå¿ èŠã«å¿ããŠäœ¿çšããŠãã ããã
现éš
ãªãã·ã§ã³ã®ã¿ã°ã ãã©ãŠã¶ãŒã¯ãã®æ瀺ã«åŸãå¿ èŠã¯ãªããããããšãã°ããŒãžäžã«ãã®ãããªã¿ã°ãå€æ°ããå Žåããã®ä»ã®å Žåã«ã¯ãDNS 解決ãå®è¡ã§ããªãå¯èœæ§ããããŸãã
DNSãšã¯ã ã€ã³ã¿ãŒãããäžã®åãµãŒããŒã«ã¯ã次ã®ãããªåºæã® IP ã¢ãã¬ã¹ããããŸãã 216.58.215.78
ã ãµã€ãã®ååã¯éåžžããã©ãŠã¶ã®ã¢ãã¬ã¹ ããŒã«å
¥åãããŸã (äŸ: google.com
)ãDNS (ãã¡ã€ã³ ããŒã ã·ã¹ãã ) ãµãŒããŒã¯ãããããµãŒããŒã® IP ã¢ãã¬ã¹ãšç
§åããŸã (216.58.215.78
).
IP ã¢ãã¬ã¹ã決å®ããã«ã¯ããã©ãŠã¶ã¯ DNS ãµãŒããŒã«ã¯ãšãªãå®è¡ããå¿ èŠããããŸãã æ°ãããµãŒãããŒã㣠ãã¡ã€ã³ã«æ¥ç¶ããå Žå㯠20 ïœ 120 ããªç§ããããŸãã
DNS ã¯ãã£ãã·ã¥ãããŸãããä¿¡é Œæ§ã¯ããŸãé«ããããŸããã äžéšã® OS ããã³ãã©ãŠã¶ãŒã¯ DNS ã¯ãšãªããã£ãã·ã¥ããŸããããã«ãããã¯ãšãªãç¹°ãè¿ãå Žåã®æéãç¯çŽã§ããŸããããã£ãã·ã¥ã«äŸåããããšã¯ã§ããŸããã Linux ã§ã¯éåžžããŸã£ããæ©èœããŸããã Chrome ã«ã¯ DNS ãã£ãã·ã¥ããããŸããããã㯠XNUMX åéããæç¶ããŸããã Windows 㯠DNS å¿çã XNUMX æ¥éãã£ãã·ã¥ããŸãã
ããªã¬ã³ããªã³ã°
<link rel= "prerender">
URL ãããŠã³ããŒãããŠé衚瀺ã®ã¿ãã«è¡šç€ºããããã«ãã©ãŠã¶ã«èŠæ±ããŸãã ãŠãŒã¶ãŒããªã³ã¯ãã¯ãªãã¯ãããšãããŒãžãããã«è¡šç€ºãããå¿
èŠããããŸãã ããã¯ããŠãŒã¶ãŒãç¹å®ã®ããŒãžã«ã¢ã¯ã»ã¹ããããšã確å®ã§ããã®ããŒãžã®è¡šç€ºãé«éåãããå Žåã«äŸ¿å©ã§ãã
ãã®ã¿ã°ã®åªããå¹æã«ãããããã (ãŸãã¯ãã®ãã)ã2019 幎ã«ã¯ <link rel= "prerender">
äž»èŠãªãã©ãŠã¶ã§ã¯ãµããŒããäžååã§ãã 詳现ãã芧ãã ããã
æ§æ
<link rel="prerender" href="https://my-app.com/pricing" />
href
ããã¯ã°ã©ãŠã³ãã§ã¬ã³ããªã³ã°ãéå§ãã URL ãæããŸãã
ãã€äœ¿çšããã
ãŠãŒã¶ãŒãç¹å®ã®ããŒãžã«ã¢ã¯ã»ã¹ãããšç¢ºä¿¡ããŠããå Žåã ããŒãž A ãžã®èšªåè
ã® 70% ãããŒãž B ã«ç§»åããããã³ãã«ããããå Žåã <link rel= "prerender">
ããŒãž A ã§ããŒãž B ããã°ãã衚瀺ããã®ã«åœ¹ç«ã¡ãŸãã
䜿ããããªãã§ãã ããã ããªã¬ã³ããªã³ã°ã¯åž¯åå¹
ãšã¡ã¢ãªã®ç¹ã§éåžžã«é«äŸ¡ã§ãã 䜿ã£ãŠã¯ãããŸãã <link rel= "prerender">
è€æ°ã®ããŒãžã«ããã£ãŠã
现éš
ãªãã·ã§ã³ã®ã¿ã°ã ãã©ãŠã¶ã¯ãã®æ瀺ã«åŸãå¿ èŠã¯ãªããããšãã°ãæ¥ç¶ãé ãå Žåã空ãã¡ã¢ãªãäžååãªå Žåã«ã¯ããã®æ瀺ãç¡èŠããå ŽåããããŸãã
ã¡ã¢ãªãç¯çŽããã«ã¯ Chrome ã¯å®å
šãªã¬ã³ããªã³ã°ãè¡ããªããš
Firefox ãš Safari ã¯ãã®ã¿ã°ããŸã£ãããµããŒãããŠããŸããã ãã©ãŠã¶ã¯ãã®æ瀺ã«åŸãå¿
èŠããªããããããã¯ä»æ§ã«éåããŸããã ã§ããŸã æ²ããã
ãµããªãŒ
䜿çšïŒ
<link rel= "preload">
- æ°ç§ä»¥å ã«ãªãœãŒã¹ãå¿ èŠãªå Žå<link rel= "prefetch">
- 次ã®ããŒãžã®ãªãœãŒã¹ãå¿ èŠãªå Žå<link rel= "preconnect">
- ããã«ãªãœãŒã¹ãå¿ èŠã«ãªãããšãããã£ãŠãããããã®å®å šãª URL ããŸã ããããªãå Žå<link rel= "dns-prefetch">
- åæ§ã«ãããã«ãªãœãŒã¹ãå¿ èŠã«ãªãããšãããã£ãŠãããããã®å®å šãª URL ããŸã ããããªãå Žå (å€ããã©ãŠã¶ã®å Žå)<link rel= "prerender">
â ãŠãŒã¶ãŒãç¹å®ã®ããŒãžã«ã¢ã¯ã»ã¹ããããšã確å®ã§ããã®è¡šç€ºãé«éåãããå Žå
åºæïŒ habr.com