ทำไมหลาย ๆ ขนาดใหญ่และเว็บไซต์แทรกเล็ก ๆ น้อย ๆ ไฟล์คงที่ (CSS, ภาพ, JavaScript, ECC) ในโดเมนย่อยเหมือนmedia.example.com
หรือs2.static.example.com
?
ข้อดีคืออะไร ทำไมไม่เพียงแค่ไดเรกทอรีเช่นexample.com/media/
?
ทำไมหลาย ๆ ขนาดใหญ่และเว็บไซต์แทรกเล็ก ๆ น้อย ๆ ไฟล์คงที่ (CSS, ภาพ, JavaScript, ECC) ในโดเมนย่อยเหมือนmedia.example.com
หรือs2.static.example.com
?
ข้อดีคืออะไร ทำไมไม่เพียงแค่ไดเรกทอรีเช่นexample.com/media/
?
คำตอบ:
ฉันเห็นเหตุผลอย่างน้อยสามข้อ (ดี) ที่เป็นไปได้:
นั่นคือสิ่งที่ทำใน StackOverflow หากฉันจำได้ถูกต้อง
เหตุผลหลักที่ฉันคิดว่าสำหรับคุกกี้
คุกกี้จะถูกส่งไปพร้อมกับคำขอทุกอย่างสมมติว่าคุณมีข้อมูลคุกกี้ 2kb และโหลดภาพ 20 ภาพบนหน้าเว็บ
นั่นคือข้อมูลเพิ่มเติม40kbคูณด้วยจำนวนการดูหน้าเว็บที่คุณมีในหนึ่งเดือนและคุณอาจประหลาดใจกับจำนวนแบนด์วิดท์ที่คุณสูญเสียไปในสิ่งที่ไร้ประโยชน์และแบนด์วิดท์ไม่ฟรี ...
นอกจากนี้คุกกี้ตั้งอยู่บนโดเมนระดับบนสุดที่จะถูกส่งผ่านการร้องขอทั้งหมดที่ทำกับโดเมนย่อยใด ๆ ในกรณีดังกล่าวจะแนะนำได้ที่จะซื้อโดเมนใหม่ที่จะเป็นเจ้าภาพส่วนประกอบคงมีในโดเมนคุกกี้ฟรี
ตัวอย่างเช่น StackOverflow ใช้sstatic.net
, Yahoo ใช้yimg.com
, YouTube ใช้ytimg.com
, Amazon ใช้images-amazon.com
ฯลฯ
ดูสิ่งนี้:
หากต้องการเพิ่มคำตอบบางส่วนด้านบน: เว็บเบราว์เซอร์บางตัวสามารถดาวน์โหลดไฟล์ได้สองไฟล์พร้อมกันจากโดเมนใด ๆ
การแสดงเนื้อหาที่คงที่จากชื่อโฮสต์ที่แตกต่างกัน (หรือชื่อ - เช่นa.domain
, b.domain
, c.domain
) ช่วยให้เบราว์เซอร์รุ่นเก่าเหล่านี้เพื่อดาวน์โหลดไฟล์ในแบบคู่ขนาน
... ใช้โดเมนที่ไม่มีคุกกี้สำหรับส่วนประกอบ
เมื่อเบราว์เซอร์ทำการร้องขอรูปภาพคงที่และส่งคุกกี้พร้อมกับคำขอเซิร์ฟเวอร์จะไม่มีการใช้งานคุกกี้เหล่านั้น ดังนั้นพวกเขาจึงสร้างทราฟฟิกเครือข่ายโดยไม่มีเหตุผลที่ดี คุณควรตรวจสอบให้แน่ใจว่ามีการร้องขอส่วนประกอบแบบสแตติกกับคำขอที่ไม่มีคุกกี้ สร้างโดเมนย่อยและโฮสต์ส่วนประกอบสแตติกทั้งหมดของคุณที่นั่น
คำแนะนำนี้นำมาจากแนวทางปฏิบัติที่ดีที่สุดของ Yahoo สำหรับการเร่งเว็บไซต์ของคุณ
เพียงเพราะคำขอ http ของคุณจะเล็กลงและเซิร์ฟเวอร์จะทำงานเร็วและไฟล์ที่ร้องขอจะได้รับในเวลาอันสั้นซึ่งจะนำไปสู่การโหลดหน้าเว็บที่เร็วที่สุด