Mengapa begitu banyak situs besar dan kecil menyisipkan file statis (CSS, gambar, JavaScript, ECC) dalam subdomain seperti media.example.com
atau s2.static.example.com
?
Apa kelebihannya? Kenapa tidak seperti direktori saja example.com/media/
?
Saya melihat setidaknya tiga kemungkinan alasan (baik):
Itulah yang dilakukan pada StackOverflow jika saya ingat dengan benar
Alasan utama saya pikir, adalah untuk cookie.
Cookie akan dikirimkan bersama dengan setiap permintaan , katakanlah jika Anda memiliki 2kb data cookie dan memuat 20 gambar pada satu halaman.
Itu adalah tambahan data 40kb , kalikan dengan jumlah tampilan halaman yang Anda miliki dalam sebulan, dan Anda mungkin akan terkejut tentang berapa banyak bandwidth yang Anda hilangkan dalam sesuatu yang tidak berguna, dan bandwidth tidak gratis ...
Selain itu, cookie yang ditetapkan pada domain tingkat atas, dikirim di semua permintaan yang dibuat ke subdomain apa pun, dalam kasus tersebut, bahkan disarankan untuk membeli domain baru untuk meng-host komponen statis di sana, dalam domain bebas cookie .
Misalnya, penggunaan StackOverflow, penggunaan sstatic.net
Yahoo yimg.com
, penggunaan YouTube ytimg.com
, penggunaan Amazon images-amazon.com
, dll.
Coba lihat ini:
Untuk menambahkan beberapa jawaban di atas: beberapa browser web hanya dapat mengunduh dua file secara bersamaan dari domain apa pun.
Melayani konten statis dari nama host yang berbeda (atau nama - misalnya a.domain
, b.domain
, c.domain
) memungkinkan browser lama untuk men-download lebih banyak file secara paralel.
... gunakan domain bebas cookie untuk komponen.
Saat browser membuat permintaan untuk gambar statis dan mengirimkan cookie bersama dengan permintaan tersebut, server tidak menggunakan cookie tersebut. Jadi mereka hanya membuat lalu lintas jaringan tanpa alasan. Anda harus memastikan komponen statis diminta dengan permintaan bebas cookie. Buat subdomain dan host semua komponen statis Anda di sana.
Saran ini diambil dari Praktik Terbaik Yahoo untuk Mempercepat Situs Web Anda .
Hanya karena permintaan http Anda akan lebih kecil dan server akan berjalan cepat dan file yang diminta akan diberikan dalam waktu yang sangat kecil yang pada akhirnya akan mengarah pada pemuatan halaman tercepat.