ฉันควรใช้ gzip ในการบีบอัด HTML หรือไม่


31

ฉันเห็นจากผู้ทดสอบออนไลน์ว่า HTML ของฉันสามารถบีบอัดได้ประมาณ 90%! เป็นการดีที่จะใช้ gzip หรือไม่? ฉันเห็นว่าไซต์จำนวนมากไม่ใช้งาน

สำหรับฉันมันจะปรับปรุงปริมาณการใช้งานเนื่องจากบางหน้ามีข้อมูลจำนวนมาก (120 KB ของ HTML ที่ไม่มีรูปภาพ) ซึ่งสามารถบีบอัดให้เหลือเพียงไม่กี่กิโลไบต์

คำตอบ:


17

ใช่. 120KB สำหรับ HTML เพียงอย่างเดียว (!) สามารถบีบอัดได้อย่างมาก ร่วมกับไฟล์ CSS และ JavaScript วิธีนี้จะช่วยเพิ่มความเร็วในการเรียกดูข้อมูลผู้ใช้ของคุณและช่วยประหยัดแบนด์วิดท์บนเซิร์ฟเวอร์ของคุณ

คุณสามารถใช้การบีบอัดโดยใช้สคริปต์ฝั่งเซิร์ฟเวอร์ของคุณและแคชไฟล์บีบอัดซึ่งจะช่วยลดแรงกดดันต่อซีพียูบนเซิร์ฟเวอร์ที่ไม่ว่าง


36

ใช่เกือบจะไม่มีเหตุผลที่ฉันคิดว่าจะไม่ใช้ GZIP ตลอดเวลา มันเหมือนกับได้รับแบนด์วิดธ์ฟรีและได้รับการสนับสนุนในระดับสากล มีไว้เสมอ!

ข้อเสียที่เป็นไปได้เท่านั้นคือ

  1. หากคุณอยู่ในโฮสต์ที่ใช้ร่วมกันที่มีทรัพยากร CPU จำกัด มากเนื่องจากการบีบอัดจะทำบนเซิร์ฟเวอร์และใช้ CPU ของเซิร์ฟเวอร์เพียงเล็กน้อย เซิร์ฟเวอร์จะต้องมีการโอเวอร์โหลดมากและ / หรือเก่ามากสำหรับเรื่องนี้ในทางปฏิบัติแม้ว่า

  2. หากคุณให้บริการที่มีขนาดใหญ่มาก (และโดยมากฉันหมายถึงหน้าเว็บแบบไดนามิกที่ 400 กิโลไบต์ขึ้นไป) การบีบอัดเนื้อหาแบบไดนามิกที่มีขนาดใหญ่มากในทันทีอาจมีราคาแพง

แต่สิ่งเหล่านี้เป็นเงื่อนไขที่หาได้ยากในประสบการณ์ของฉัน 99% ของเวลาในการบีบอัด HTTP นั้นชนะอย่างชัดเจน


นอกจากนี้ฉันจะบอกว่าผู้ให้บริการโฮสต์บางรายร้องเรียนของฟอรัมและเว็บไซต์อื่น ๆ ที่ใช้กันอย่างแพร่หลายที่ใช้ gzip ทำให้การใช้ CPU สูงกว่าที่ Jeff กล่าวไว้ข้างต้น คำตอบคือใช่ แต่ตรวจสอบตัวเลือกผู้ให้บริการโฮสต์ของคุณก่อน
Ilian Iliev

ดีมีความเสี่ยงของการเป็นโจมตีการละเมิด หากคุณตัดสินใจที่จะใช้การบีบอัด gzip ให้แน่ใจว่าได้ใช้แอตทริบิวต์คุกกี้ของไซต์เดียวกันแต่ถึงอย่างนั้นก็จะมีผู้ใช้จำนวนเล็กน้อยที่มีเวอร์ชันเบราว์เซอร์เก่าที่มีความเสี่ยง ...
goulashsoup

8

เป็นการดีที่จะใช้ gzip หรือไม่?

ขึ้นอยู่กับสภาพแวดล้อมของเว็บเซิร์ฟเวอร์ของคุณ

หากเซิร์ฟเวอร์ของคุณมีเวลาน้อยในช่วงเวลาที่ไม่ได้ทำงานของ CPU การเพิ่มภาวะเงินฝืด GZIP อาจทำให้อัตราที่เซิร์ฟเวอร์ของคุณตอบสนองต่อคำขอนั้นช้าลง

หากคุณไม่ได้ในปัจจุบันการจัดการกับคอขวด CPU แต่ GZIP ภาวะเงินฝืดเป็นความคิดที่ดี แต่เพียงสำหรับไฟล์ข้อความธรรมดา

รูปแบบไฟล์ภาพส่วนใหญ่ (เช่น PNG, JPG, GIF) ถูกบีบอัดไว้แล้วและการลดลงของ GZIP ทำให้เสียเวลาของ CPU


ฉันจะหลีกเลี่ยงการบีบอัดไฟล์เหล่านี้ใน apache ได้อย่างไร
GorillaApe

4
ใช้AddOutputFilterByTypeคำสั่ง - ดูmod_deflateรายการในคู่มือ Apache สำหรับข้อมูลเพิ่มเติม: httpd.apache.org/docs/2.0/mod/mod_deflate.html
danlefree

1
รูปแบบสื่อบีบอัดส่วนใหญ่ยังได้รับประโยชน์น้อยมากจากการถูกบีบอัด ซึ่งรวมถึง MP3, AVI, MP4, MPG และ PDF
Lèsemajesté
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.