Saya telah mencoba menggunakan sesuatu seperti ini untuk mendapatkan peningkatan kinerja saat mengklik dari halaman arahan sederhana ke aplikasi satu halaman kelas berat:
<link rel="prefetch" href="https://example.com" as="document" />
<link rel="prefetch" href="https://example.com/app.js" as="script" />
<link rel="prefetch" href="https://example.com/app.css" as="style" />
Tampaknya tidak ada peningkatan kinerja yang terlihat saat halaman arahan saya berada di subdomain. Katakan https://subdomain.example.com
,.
Ketika saya mengklik tautan untuk mengunjungi https://example.com
, saya masih melihat penundaan yang lama di tab jaringan Chrome sebagai app.js
dan app.css
dimuat:
Berikut sumber yang sama dengan prefetching dinonaktifkan:
Total waktu yang dibutuhkan kira-kira sama.
Minta tajuk untuk salah satu aset yang dimuat dengan cache prefetch:
Umum:
Request URL: https://example.com/css/app.bffe365a.css
Request Method: GET
Status Code: 200 (from prefetch cache)
Remote Address: 13.226.219.19:443
Referrer Policy: no-referrer-when-downgrade
Tanggapan:
accept-ranges: bytes
cache-control: max-age=31536000
content-encoding: gzip
content-length: 39682
content-type: text/css
date: Mon, 06 Jan 2020 21:42:53 GMT
etag: "d6f5135674904979a2dfa9dab1d2c440"
last-modified: Mon, 06 Jan 2020 20:46:46 GMT
server: AmazonS3
status: 200
via: 1.1 example.cloudfront.net (CloudFront)
x-amz-cf-id: dO3yiCoPErExrE2BLYbUJaVye32FIJXXxMdI4neDGzGX9a6gcCDumg==
x-amz-cf-pop: LAX50-C1
x-amz-id-2: 1O0LmihxpHIywEaMQWX7G3FDAzxtH9tZq1T/jeVLMzifFSJSIIJSS6+175H61kKdAq6iEbwfs2I=
x-amz-request-id: AF35C178092B65D4
x-cache: Hit from cloudfront
Permintaan:
DNT: 1
Referer: https://example.com/auth/join
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36
Pertanyaan saya adalah: Jika Chrome menunjukkan bahwa cache prefetch digunakan, mengapa ada waktu pengunduhan konten yang signifikan?
Tampaknya Chrome memiliki berbagai jenis cache: cache prefetch, cache disk, dan cache memori. Cache disk dan cache memori sangat cepat (5ms dan 0ms memuat kali). Namun cache prefetch sangat tidak berguna dengan 300ms kali pengunduhan. Bisakah saya mendapatkan penjelasan teknis mengapa ini terjadi? Apakah ini bug dengan Chrome? Saya di Chrome 79.0.3945.117.