การบีบอัด Brotli: ทางเลือกที่รวดเร็วสำหรับการบีบอัด GZIP
เผยแพร่แล้ว: 2022-04-22ความเร็วเป็นสิ่งสำคัญสำหรับเว็บไซต์ใดๆ ในการแสวงหาเวลาในการโหลดที่รวดเร็วของเว็บ เรามีเทคโนโลยีต่างๆ มากมายที่จะช่วยเราได้ วิธีหนึ่งคือการลดโค้ดพื้นฐานที่ไซต์ของคุณจะใช้โดยไม่กระทบต่อการทำงานของโค้ด การบีบอัด GZIP เป็นวิธีหนึ่งในการทำเช่นนี้ แต่การบีบอัด Brotli เป็นวิธีการทางเลือกอื่นที่ดึงดูดความสนใจ
เป็นโซลูชันที่พัฒนาโดย Google ที่ให้ประโยชน์มากมายเหนือ (รวมถึงทางเลือกอื่น) การบีบอัด GZIP รายละเอียดในบทความนี้จะกล่าวถึงสิ่งที่เทคโนโลยีนำเสนอ แต่การบีบอัดข้อมูล Brotli นั้นรวดเร็วและมีประสิทธิภาพ — ซึ่งจะทำเครื่องหมายในช่องทั้งหมดที่คุณต้องตรวจสอบ
สำหรับบทช่วยสอนนี้ เราจะดูการบีบอัด Brotli และแสดงวิธีตรวจสอบว่าไซต์ของคุณใช้งานหรือไม่ และวิธีเปิดใช้งานหากคุณต้องการ อันดับแรก เราจะวาง Brotli ไว้ในพื้นที่อัลกอริธึมการบีบอัด และพูดคุยเกี่ยวกับสาเหตุที่คุณต้องการใช้ Brotli กับโซลูชันอื่นๆ
การบีบอัดข้อมูลสำหรับเว็บ
ในรูปแบบพื้นฐานที่สุด การบีบอัดข้อมูลจะใช้โค้ดสำหรับเว็บไซต์หรือแอป และลดขนาดไฟล์ ซึ่งจะทำให้ไฟล์มีขนาดเล็กลงเพื่อย้ายไปรอบๆ เว็บ และลดเวลาที่ใช้ในการโหลดและแสดงผลเว็บไซต์ คุณจะพบว่ามีหลายวิธีในการบีบอัดข้อมูล ทั้งนี้ขึ้นอยู่กับประเภทไฟล์ที่คุณกำลังใช้งาน
วิธีการทั่วไปคือ "การลดขนาด" นี่คือที่ที่อัลกอริธึมตัดโค้ดของไซต์คุณจากองค์ประกอบฟุ่มเฟือยบางส่วน แนวคิดก็คือแง่มุมต่างๆ เช่น การเยื้อง ความคิดเห็น การเว้นวรรค และอื่นๆ จะเพิ่มขนาดไฟล์ และทำให้เวลาในการโหลดเพิ่มขึ้น
การนำองค์ประกอบเหล่านี้ออกจะไม่ส่งผลต่อประสบการณ์ของผู้ใช้ (UX) ในสถานการณ์ส่วนใหญ่ อย่างไรก็ตาม มัน ทำให้ สิ่งต่าง ๆ ตรงไปตรงมามากขึ้นสำหรับคอมพิวเตอร์ที่ต้องคอมไพล์และแสดงโค้ด ตัวอย่างเช่น ใช้รหัสชุดนี้:
define( 'WP_INSTALLING', true ); /** Sets up the WordPress Environment. */ require __DIR__ . '/wp-load.php'; require __DIR__ . '/wp-blog-header.php'; if ( ! is_multisite() ) { wp_redirect( wp_registration_url() ); die(); } $valid_error_codes = array( 'already_active', 'blog_taken' );
โค้ดด้านบนใช้องค์ประกอบต่างๆ เช่น การเว้นวรรคและการขึ้นบรรทัดใหม่เพื่อให้มนุษย์สามารถอ่านได้ แต่คอมพิวเตอร์ไม่จำเป็นต้องใช้องค์ประกอบเหล่านี้เพื่อทำความเข้าใจโค้ดหลัก ยิ่งไปกว่านั้น ช่องว่างและการขึ้นบรรทัดใหม่เหล่านี้จะใช้พื้นที่อันมีค่าซึ่งเมื่อนำออกแล้ว จะช่วยเพิ่มประสิทธิภาพให้กับคุณได้
หากคุณย่อโค้ดนี้ให้เล็กสุด จะดูแตกต่างไปจากเดิมอย่างสิ้นเชิง:
define( 'WP_INSTALLING', true ); /** Sets up the WordPress Environment. * / require __DIR__ . '/wp-load.php'; require __DIR__ . '/wp-blog-header.php'; if ( ! is_multisite() ) { wp_redirect( wp_registration_url() ); die(); } $valid_error_codes = array( 'already_active', 'blog_taken' );
อย่างไรก็ตาม พื้นฐานของสิ่งที่โค้ดนี้ทำยังคงเหมือนเดิม
คุณจะพบว่าไฟล์ประเภทอื่นๆ มีวิธีการบีบอัดข้อมูล ตัวอย่างเช่น รูปภาพมักใช้การบีบอัดจำนวนมากเพื่อลดขนาดโดยไม่ทำให้รูปภาพเสียหายมากนัก:
การบีบอัด GZIP เป็นวิธีมาตรฐานในการลดขนาดของบันเดิลของไฟล์ — ให้นึกถึงแพ็คเกจต่างๆ เช่น บันเดิล ZIP หรือ Linux .tar
แต่จนถึงขณะนี้ยังไม่มีทางเลือกอื่นที่แท้จริง เราจะพูดคุยเพิ่มเติมเกี่ยวกับสาเหตุที่ควรมีทางเลือกอื่นในภายหลัง แต่ก่อนอื่น ขอแนะนำให้คุณรู้จักกับ "คู่แข่ง" ของ GZIP
การบีบอัด Brotli
โดยสรุป Broti เป็นอัลกอริธึมการบีบอัดข้อมูล อย่างไรก็ตาม หากเราพูดได้แค่นี้ ก็ไม่มีเหตุผลที่จะต้องตรวจสอบเรื่องนี้
โดยให้การบีบอัดแบบ "ไม่สูญเสียข้อมูล" และพัฒนาโดย Google ภายใต้ใบอนุญาต MIT บริษัทมักจะอยู่ในระดับแนวหน้าของเทคโนโลยีขั้นสูงของเว็บ ดังนั้นจึงไม่น่าแปลกใจที่ Brotli มองหาสิ่งที่ GZIP ทำ ปรับปรุง และมอบประสบการณ์ที่ดียิ่งขึ้นแก่ผู้ใช้และไซต์
การบีบอัด Brotli ใช้เทคโนโลยีพื้นฐานหลักเดียวกันกับการบีบอัด GZIP กล่าวคือ:
- อัลกอริทึม LZ77
- Huffman การเข้ารหัสและถอดรหัส
ที่จริงแล้ว หากคุณรวมเทคโนโลยีทั้งสองนี้เข้าด้วยกัน คุณจะได้รูปแบบ DEFLATE
ที่ทำหน้าที่เป็นพื้นฐานสำหรับการบีบอัด GZIP และ Brotli เป็นสิ่งที่เราลงลึกในโพสต์เกี่ยวกับการบีบอัด GZIP
กล่าวโดยย่อ ไฟล์ที่ไม่บีบอัดทำงานผ่านอัลกอริธึม LZ77 และ Huffman ซึ่งเป็นส่วนหนึ่งของกระบวนการ DEFLATE
เพื่อบีบอัดให้อยู่ในรูปแบบ Brotli จากนั้น กระบวนการ INFLATE
จะขยายขนาดไฟล์อีกครั้งเมื่อจำเป็น
แม้ว่า Brotli จะเป็นคู่แข่งหลักของ GZIP แต่ก็มีเทคโนโลยีที่คล้ายคลึงกันอื่นๆ ที่ใช้ DEFLATE
ด้วย ในหัวข้อถัดไป เราจะพูดถึงสิ่งที่ทำให้ Brotli โดดเด่น
การบีบอัด Brotli กับการบีบอัด GZIP
ดังที่กล่าวไว้ ทั้ง Brotli และ GZIP ใช้วิธี DEFLATE
เพื่อบีบอัด (และขยายขนาด) ข้อมูล สิ่งนี้อาจทำให้หลายคนสับสน เพราะสิ่งนี้ไม่รับประกันการเปลี่ยนแปลง
อย่างไรก็ตาม Google กำลังสร้างเหนือ DEFLATE
เพื่อนำเสนอเทคนิคที่ได้รับการปรับปรุงและบีบอัดข้อมูลให้เป็นมาตรฐานที่มากขึ้นและเร็วขึ้น
Brotli ใช้พจนานุกรมเพื่อปรับปรุงการบีบอัดข้อมูลอย่างไร
ลักษณะทางเทคนิคประการหนึ่งของรูปแบบการบีบอัดข้อมูลคือวิธีที่การบีบอัด Brotli ใช้ภาษาและข้อความที่รู้จักที่มีอยู่ภายในพจนานุกรมข้อมูลเพื่อใช้อัลกอริทึม
นักพัฒนาจะใช้พจนานุกรมของคู่คีย์-ค่าในการจัดเก็บข้อมูล เนื่องจากมีประสิทธิภาพ ยืดหยุ่น และปรับขนาดได้ นี่คือสิ่งที่พจนานุกรม PHP (เรียกว่า “อาร์เรย์”) จะมีลักษณะดังนี้:
$cats = get_categories( array( 'taxonomy' => 'link_category', 'hierarchical' => 0, 'include' => $link_cat, ) );
แม้ว่า GZIP จะไม่ใช้พจนานุกรม แต่ Brotli ใช้ไฟล์ .
พจนานุกรมแบบคงที่ของ Brotli
อย่างแรกคือพจนานุกรมแบบคงที่ (เช่นที่กำหนดไว้ล่วงหน้า) ของคำศัพท์รหัสทั่วไปที่ทำหน้าที่เป็นข้อมูลอ้างอิงสำหรับข้อความ HTML, CSS และ JavaScript
มีคำศัพท์มากกว่า 13,000 คำในหกภาษาที่แตกต่างกัน และ Brotli จะใช้คำเหล่านี้เป็นข้อมูลอ้างอิงไปยังจุดต่างๆ ในโค้ด ไม่ใช่การเปรียบเทียบที่แน่นอน แต่คล้ายกับวิธีที่ WordPress hook อ้างอิงถึงชุดโค้ดที่ใหญ่กว่า
ด้วยเหตุนี้ ตัวเข้ารหัสจึงไม่จำเป็นต้องกรองโค้ดทีละไบต์ แต่สามารถดำเนินการกับข้อมูลอ้างอิง ดึงคำจำกัดความจากพจนานุกรม และไปยังส่วนถัดไป
นอกจากนี้คุณยังจะพบว่ามีวลีในโลกแห่งความเป็นจริงในพจนานุกรมรวมถึงโค้ดที่ไม่ค่อยเห็นการบีบอัด ซึ่งช่วยให้แท็กบางแท็ก เช่น <HTML>
และพารามิเตอร์ เช่น type="text/javascript"
บีบอัดข้อมูลและให้ประโยชน์มากขึ้น
นอกจากนี้ยังมี "การแปลง" บางอย่างในพจนานุกรม ได้แก่ วลีบางส่วน ไม่สมบูรณ์ และประเภทอื่นๆ ที่มีคำนำหน้า คำต่อท้าย หรือตัวพิมพ์ใหม่กลายเป็นคำใหม่ทั้งหมด ตัวอย่างเช่น "งาน" ที่เปลี่ยนเป็น "การทำงาน" หรือ "html" ” เป็น “HTML”
พจนานุกรมไดนามิกของ Brotli
พจนานุกรมไดนามิกแยกวิเคราะห์เนื้อหาและโค้ดที่ต้นทาง ซึ่งดีสำหรับอุปกรณ์ขนาดเล็ก แต่ไม่ดีสำหรับไฟล์ขนาดใหญ่ เรียกอีกอย่างว่า "หน้าต่างบานเลื่อน" และมีขนาดได้ถึง 16 MB นี่คือที่ที่อัลกอริทึมการบีบอัด 'แคช' ข้อมูลล่าสุดบางส่วนเพื่ออ้างอิง เป็นไดนามิกที่เปลี่ยนแปลงตลอดเวลา
หากคุณเปรียบเทียบสิ่งนี้กับหน้าต่างบานเลื่อน GZIP ที่มีขนาดประมาณ 32 KB คุณจะเห็นว่าขอบเขตสำหรับการแยกวิเคราะห์และการบีบอัดตามเวลาจริงนั้นใหญ่มาก อันที่จริง แนวทางปฏิบัติทั่วไปส่วนใหญ่ใช้หน้าต่างบานเลื่อน Brotli ที่มีขนาดประมาณ 4 MB ซึ่งยังคงเป็นแมมมอธเมื่อเทียบกับอัลกอริธึมที่แข่งขันกัน
การบีบอัด Brotli กับการบีบอัด GZIP: ประสิทธิภาพและการสนับสนุน
เมื่อพูดถึงจำนวนผู้ใช้ล้วนๆ การบีบอัด GZIP ยังคงเป็นอันดับหนึ่ง อย่างไรก็ตาม การบีบอัด Brotli พบว่ามีการใช้งานมากขึ้นทุกวัน ส่วนหนึ่งเป็นผลจากการวัดผลที่กว้างกว่าโดยเบราว์เซอร์หลัก การเพิ่มขึ้นของเบราว์เซอร์ที่ใช้ Chromium ก็ช่วยได้เช่นกัน
เว็บไซต์ Can I Use… จะบันทึกว่าเทคโนโลยีใดบ้างที่เบราว์เซอร์นำมาใช้ และให้ข้อมูลประวัติต่างๆ ไซต์นี้ตั้งข้อสังเกตว่ากว่า 95% ของเบราว์เซอร์ใช้การบีบอัด Brotli ในการเขียนปัจจุบัน รวมถึงเวอร์ชันหลักทั้งหมด
ในบทความเกี่ยวกับการบีบอัด GZIP เราสังเกตเห็นการทดสอบเกณฑ์มาตรฐานที่ Brotli มีอัตราส่วนการบีบอัดที่ดีกว่าเมื่อเทียบกับอัลกอริธึมที่แข่งขันกัน แต่ลดลงในด้านเวลาในการบีบอัดและคลายการบีบอัด:
อย่างไรก็ตาม การทดสอบเกณฑ์มาตรฐานสควอชแสดงเรื่องราวที่แตกต่างออกไป ซึ่งมีความเหมาะสมยิ่งขึ้น ความจริงก็คือ Brotli นั้นมีความยืดหยุ่นมากกว่า GZIP โดยรวม โดยมีอัตราส่วนการอัดที่สูงกว่าโดยทั่วไป
นี่คือบทสรุปของผลการสืบค้นของ Squash Benchmarks:
- Brotli มีอัตราการบีบอัดที่ดีกว่า (กล่าวคือ ทำให้ไฟล์บีบอัดมีขนาดเล็กลง) ในทุกระดับของการบีบอัด
- แม้ว่า GZIP จะเอาชนะ Brotli ด้วยความเร็วเป็นส่วนใหญ่ แต่ระดับที่คุณบีบอัดตามปัจจัยต่างๆ ในผลลัพธ์ที่คุณจะเห็น
รายละเอียดของ Paul Calvano ให้รายละเอียดเพิ่มเติม แต่ประเด็นสำคัญคือ Brotli ต้องการพลังงาน CPU มากขึ้นเพื่อให้มีปัจจัยในการบีบอัดไฟล์มากขึ้น ซึ่งแสดงที่ระดับการบีบอัดสูงสุดและต่ำสุด การเปรียบเทียบของ Cloudflare ช่วยสนับสนุนสิ่งนี้: ไฟล์ที่เล็กกว่ามาก พร้อมตัวเลขความเร็วการบีบอัดที่ใกล้เคียงกว่า
นอกจากนี้ ให้พิจารณาว่าเครื่องมือทดสอบบางอย่าง เช่น Pingdom และเครือข่ายการจัดส่งเนื้อหา (CDN) บางส่วนยังไม่รองรับ Brotli ในตอนนี้ สิ่งนี้สามารถบิดเบือนข้อมูลที่ผู้อื่นรวบรวมเกี่ยวกับวิธีการทำงานของ Brotli คุณจะเห็น "ผลลบที่ผิดพลาด" หากคุณทำการทดสอบ: ตัวเลขความเร็วหน้าที่สูงขึ้นซึ่งละเว้นการบีบอัดไฟล์ที่คุณใช้
ประโยชน์ของการบีบอัด Brotli
มีข้อมูลมากมายเกี่ยวกับการบีบอัด Brotli จนถึงตอนนี้ อย่างไรก็ตาม เราสามารถสรุปสิ่งที่คุณต้องรู้เกี่ยวกับสาเหตุที่คุณควรเลือก Brotli ผ่าน GZIP ได้:
- ใช้เทคโนโลยีเดียวกับ GZIP และปรับปรุงด้วยวิธีการที่ทันสมัย
- การแยกวิเคราะห์ตามพจนานุกรมของ Brotli หมายความว่าสามารถบีบอัดไฟล์ของคุณได้มากขึ้นในระดับที่ลึกยิ่งขึ้น
- แม้ว่า Brotli ต้องการพลังในการคำนวณมากกว่า GZIP แต่ผลลัพธ์ก็หมายถึงไฟล์ที่เล็กกว่า
- ที่ระดับการบีบอัดที่โฮสต์เว็บส่วนใหญ่ใช้ — ระดับกลางเช่นระดับสี่หรือห้า — Brotli ทำงานได้ดีกว่า GZIP โดยไม่เหนื่อย
- คุณจะพบว่า Brotli มีการสนับสนุนเกือบสากลในทุกเบราว์เซอร์ หากไม่ใช่เครื่องมือวัดประสิทธิภาพบางอย่างที่คุณคุ้นเคย
- Brotli ใช้งานได้ฟรีและเป็นโอเพ่นซอร์ส นี่เป็นข้อได้เปรียบหากคุณใช้ CDN ที่เข้ากันได้กับ Broti เช่น Cloudflare
เป็นที่น่าสังเกตว่า Cloudflare ใช้การบีบอัด Brotli บนเซิร์ฟเวอร์ทั้งหมด อันที่จริงมันใช้ Brotli เวอร์ชันดัดแปลงและปรับให้เหมาะสมเพื่อให้คุณได้รับประโยชน์เพิ่มเติมเกี่ยวกับความเร็วและการส่งไฟล์
เนื่องจาก Kinsta เสนอการรวม Cloudflare ในทุกแผน ทุกไซต์ที่โฮสต์จึงใช้ Brotli เป็นค่าเริ่มต้น นี่เป็นเพียงเหตุผลเดียวที่ Kinsta เป็นหนึ่งในผู้ให้บริการโฮสติ้งชั้นนำของตลาดและดีที่สุด
วิธีตรวจสอบว่าไซต์ของคุณใช้การบีบอัด Brotli หรือไม่
เนื่องจากการบีบอัด Brotli ยังไม่ได้มาตรฐาน (แม้ว่าจะเกือบจะอยู่ที่นั่นแล้วก็ตาม) คุณจึงอาจต้องการทราบว่าไซต์ของคุณใช้งานหรือไม่ มีสองสามวิธีในการค้นหาสิ่งนี้
1. ใช้เครื่องมือออนไลน์
วิธีที่ง่ายที่สุดในการตรวจสอบว่าไซต์ของคุณใช้การบีบอัดข้อมูล Brotli ผ่านเครื่องมือออนไลน์หรือไม่ แม้ว่าจะมีตัวเลือกบางอย่างให้เลือก แต่คุณต้องการบางสิ่งที่รวดเร็วและใช้งานง่าย ซึ่งจะให้ข้อมูลมากมายเกี่ยวกับการตั้งค่าของคุณ
Gift of Speed เป็นทางเลือกของเราในการตรวจสอบการบีบอัดของ Brotli
จะกำหนดว่าไซต์ของคุณใช้ GZIP, Brotli หรือไม่ใช้การบีบอัดเลย และจัดเตรียมเมตริกอื่นๆ อีกสองสามตัวเพื่อช่วยให้คุณตัดสินใจว่าจะทำอะไรต่อไป ตัวชี้วัดเหล่านี้ให้ข้อมูลเชิงลึกที่สำคัญ เนื่องจากคุณไม่เพียงแต่ต้องการพิจารณาว่าเซิร์ฟเวอร์ของไซต์ของคุณใช้ "รสชาติ" ของการบีบอัดที่เหมาะสมหรือไม่
มีองค์ประกอบมากมายที่ประกอบกันเป็นเว็บไซต์ และแม้แต่ไลบรารีและการพึ่งพาของบุคคลที่สาม คุณอาจเลือกที่จะให้บริการโดยใช้ CDN และหากเป็นเช่นนั้น จำเป็นต้องใช้การบีบอัด Brotli ด้วยเพื่อประสิทธิภาพที่ดีที่สุด
หากคุณใช้ Gift Of Speed เพื่อทดสอบทรัพย์สินแต่ละรายการ คุณสามารถดูค่าเซิร์ฟเวอร์เพื่อดูว่ามีการให้บริการอย่างไร
ไซต์ Kinsta ทั้งหมดใช้ Kinsta CDN ที่ขับเคลื่อนโดย Cloudflare ด้วยเหตุนี้ ทุกไซต์จะใช้การบีบอัด Brotli ตลอดทั้งสถาปัตยกรรมลูกโซ่และเซิร์ฟเวอร์ทั้งหมด
2. ตรวจสอบโดยใช้เครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ของเบราว์เซอร์
นักพัฒนาส่วนใหญ่จะรู้ว่าเบราว์เซอร์มีเครื่องมือที่ยอดเยี่ยมที่จะช่วยคุณในการตรวจสอบและแก้ไขปัญหาที่เกี่ยวข้องกับเว็บทุกประเภท การตรวจสอบอย่างรวดเร็วอย่างหนึ่งที่คุณสามารถทำได้คือไซต์ของคุณ (หรือเนื้อหาเฉพาะ) ใช้การบีบอัด Brotli หรือไม่
สำหรับเบราว์เซอร์หลักทั้งหมด เช่น Brave, Edge, Firefox หรือ Chrome คุณสามารถไปที่หน้าจอ Network > All
ในตอนแรก คุณจะไม่เห็นสิ่งใดที่เกี่ยวข้องกับส่วนหัวของเนื้อหา คุณจะต้องเลือกเนื้อหาหรือคำขอจากด้านซ้ายมือ หากคุณค้นหาและเลื่อนดูรายการไปเรื่อยๆ คุณจะเห็นแผงเปิดขึ้นซึ่งมีค่าเริ่มต้นเป็นข้อมูล ส่วนหัว
ที่นี่ เลื่อนลงไปที่ผลลัพธ์จนกว่าคุณจะเห็นการ content-encoding: br
บรรทัด:
กล่าวโดยย่อ: หากคุณเห็น content-encoding: br
แสดงว่า Brotli เปิดใช้งานสำหรับไซต์นั้น
วิธีเปิดใช้งานการบีบอัด Brotli สำหรับเว็บไซต์ของคุณ
ในสองสามส่วนสุดท้ายนี้ เราจะแสดงให้คุณเห็นวิธีต่างๆ ในการเปิดใช้งานการบีบอัด Brotli สำหรับไซต์ของคุณ วิธีแรกคือแนวทางที่เราแนะนำสำหรับไซต์ WordPress ส่วนใหญ่ที่ไม่ได้ใช้ Kinsta และสุดท้ายคือสิ่งที่เราแนะนำสำหรับ ทุก ไซต์ที่อ่านแนวทางแรก!
1. ใช้ปลั๊กอิน WordPress
เกือบทุกไซต์ WordPress จะใช้ปลั๊กอินอย่างน้อยหนึ่งตัว ซึ่งมักจะขึ้นอยู่กับฟังก์ชันที่ไซต์ต้องการ การแคชเป็นกรณีการใช้งานเดียวสำหรับปลั๊กอิน และมีหลายสิ่งรอบตัว อย่างไรก็ตาม ไม่ใช่ทั้งหมดที่จะให้คุณเปิดใช้งานการบีบอัด Brotli ดังนั้น คุณจะต้องเลือกอย่างชาญฉลาดและเตรียมพร้อมที่จะเปลี่ยนโซลูชันที่คุณต้องการ
ก่อนที่คุณจะทำการเปลี่ยนแปลงใดๆ กับไซต์ อย่าลืมสำรองข้อมูลทั้งหมดในกรณีที่คุณจำเป็นต้องกู้คืนในภายหลัง สำหรับวิธีนี้ เราจะใช้ W3 Total Cache เนื่องจากจะหาการตั้งค่าที่เหมาะสมได้ง่าย
คุณจะต้องไปที่หน้า Performance > Browser Cache ภายใน WordPress:
หน้าจอนี้แสดงการตั้งค่าสองแบบ คุณจะต้องเลือก Enable HTTP (brotli) Compression :
อย่างไรก็ตาม สิ่งนี้จะไม่เหมาะสำหรับทุกไซต์และทุกสถานการณ์ ตัวอย่างเช่น Kinsta ปรับเซิร์ฟเวอร์ให้เหมาะสมสำหรับการโฮสต์ที่รวดเร็ว ประสิทธิภาพสูง และเชื่อถือได้ ด้วยเหตุนี้ มีปลั๊กอินจำนวนหนึ่งที่คุณไม่ต้องการ และบางปลั๊กอินบางตัวก็ถูกห้ามไม่ให้ใช้งานบนไซต์ Kinsta
ในกรณีเหล่านี้ คุณจะต้องใช้แนวทางอื่น
2. เปิดใช้งาน Brotli บนเซิร์ฟเวอร์
เมื่อพูดถึงการเลือกประเภทเซิร์ฟเวอร์ Nginx vs Apache เป็นการต่อสู้ที่ยาวนานซึ่ง (สำหรับตอนนี้) ฝ่ายแรกเป็นฝ่ายชนะ ไม่ว่าเซิร์ฟเวอร์ทั้งสองประเภทสามารถเปิดใช้งานการบีบอัด Brotli และมีแนวทางที่แตกต่างกันสำหรับแต่ละประเภท
ก่อนที่คุณจะพิจารณาแนวทางปฏิบัติด้วยตนเอง มีข้อกำหนดเบื้องต้นบางประการที่คุณควรรู้:
- คุณจะต้องเข้าใจวิธีเข้าถึงไฟล์การกำหนดค่าสำหรับเซิร์ฟเวอร์เฉพาะของคุณ
- ความรู้เกี่ยวกับบรรทัดคำสั่งจะเป็นประโยชน์ โดยเฉพาะเมื่อพูดถึงเซิร์ฟเวอร์ Apache ในการรันคำสั่งใดๆ คุณจะต้องเป็นผู้ใช้รูทที่มีสิทธิ์
sudo
- คุณอาจต้องใช้โปรแกรมแก้ไขข้อความ แต่สำหรับการแก้ไขอย่างรวดเร็วเช่นนี้ คุณน่าจะไม่มีปัญหา
- ในบางกรณี คุณจะต้องใช้ข้อมูลรับรองการเข้าสู่ระบบของคุณในฐานะผู้ใช้เชลล์ที่ปลอดภัย (SSH) บนเซิร์ฟเวอร์เอง คุณสามารถค้นหาสิ่งเหล่านี้ได้ภายในแผงควบคุมการโฮสต์ของคุณ หรือติดต่อฝ่ายสนับสนุนเพื่อสอบถาม
หากคุณมีข้อสงสัยเกี่ยวกับแนวทางปฏิบัติด้วยตนเอง เราขอแนะนำให้คุณพิจารณาตัวเลือกอื่น หรือติดต่อโฮสต์ของคุณเพื่อขอความช่วยเหลือ อย่างไรก็ตาม เราจะให้ภาพรวมคร่าวๆ ของกระบวนการสำหรับแต่ละเซิร์ฟเวอร์โดยเริ่มจาก Nginx
Nginx
หากต้องการเปิดใช้งานการบีบอัด Brotli บนเซิร์ฟเวอร์ Nginx ก่อนอื่นคุณต้องค้นหาไฟล์ nginx.conf
จะเป็นหนึ่งในสถานที่ไม่กี่แห่ง:
-
/usr/local/nginx/conf
-
/etc/nginx
-
/usr/local/etc/nginx
เมื่อคุณเปิดไฟล์แล้ว ให้เพิ่มข้อมูลต่อไปนี้ที่ด้านล่าง:
brotli on; brotli_static on; brotli_comp_level 9; # You can change this from 1–11. 4–9 offers good performance balance. brotli_types text/plain text/css application/javascript application/json image/svg+xml application/xml+rss;
ชุดนี้จะเปิดใช้ Brotli และใช้เพื่อให้บริการไฟล์แบบคงที่ การตั้งค่า brotli_comp_level
ตั้งค่าที่คุณสามารถเปลี่ยนได้ขึ้นอยู่กับกรณีการใช้งานและความต้องการของคุณ ตัวเลขที่สูงกว่าให้การบีบอัดที่สมดุลกับไซต์ที่มีประสิทธิภาพน้อยกว่า
Apache
เนื่องจาก Apache มีความยืดหยุ่นในการกำหนดค่า คุณจึงสามารถเปิดใช้งานการบีบอัดข้อมูล Brotli ได้โดยไม่ยุ่งยากมากนัก
โดยทำตามขั้นตอนเหล่านี้:
- เข้าสู่ระบบเซิร์ฟเวอร์ของคุณโดยใช้พรอมต์คำสั่งหรือแอปพลิเคชันเทอร์มินัล ในฐานะผู้ใช้รูท
sudo
- รันคำสั่ง
a2enmod brotli
เพื่อเปิดการบีบอัด - ภายใน Apache VirtualHost หรือการกำหนดค่าเซิร์ฟเวอร์ของคุณ ให้เพิ่ม
AddOutputFilterByType BROTLI_COMPRESS text/html text/plain text/xml text/css text/javascript application/javascript
line เพื่อกำหนดประเภทไฟล์ที่คุณต้องการบีบอัด
แม้ว่า Apache จะไม่รองรับการบีบอัดแบบสแตติก คุณสามารถเปลี่ยนระดับของการบีบอัด Brotli ที่คุณเสนอได้โดยใช้ BrotliCompressionQuality LEVEL-NUMBER
อย่างไรก็ตาม คุณจะต้องแทนที่ตัวยึดตำแหน่ง “LEVEL-NUMBER” ด้วยตัวเลขระหว่าง 1–11
3. ใช้โฮสต์เว็บที่รองรับ
วิธีที่ง่ายที่สุดในการเปิดใช้งานการบีบอัด Brotli สำหรับไซต์ของคุณคือการทำให้แน่ใจว่าโฮสต์ของคุณทำเช่นนี้โดยค่าเริ่มต้น Kinsta เสนอการบีบอัด Brotli เป็นมาตรฐานด้วยการผสานรวมกับ CDN ของ Cloudflare
Kinsta CDN ขับเคลื่อนโดยโครงสร้างพื้นฐานของ Cloudflare ในทุกแผน — ดังนั้นทุกไซต์จึงใช้การบีบอัด Brotli โดยที่คุณไม่ต้องเปิดใช้งาน
คุณจะต้องตรวจสอบว่าโฮสต์ที่คุณเลือกมีการบีบอัด Brotli หรือไม่ และคุณต้องกำหนดค่าในระดับใด เพื่อใช้งานเว็บไซต์ที่มีประสิทธิภาพ เสถียร และปลอดภัยที่สุด โฮสติ้งที่ดีจึงเป็นสิ่งจำเป็น
สรุป
การบีบอัดข้อมูลเป็นองค์ประกอบที่จำเป็นในการพัฒนาและใช้งานเว็บสมัยใหม่ ขนาดไฟล์อาจพุ่งสูงขึ้นเนื่องจากประเภทไฟล์ที่สมบูรณ์และซับซ้อน ซึ่งคุณจะใช้ในการรวมเว็บไซต์เข้าด้วยกัน พวกเขาทั้งหมดต้องการรูปแบบการบีบอัด
วิธีการทั่วไปคือ GZIP จนถึงปัจจุบัน แต่มีเด็กใหม่ในบล็อก
การบีบอัด Brotli ใช้เทคโนโลยีของตนบนพื้นฐานเดียวกับ GZIP แต่มีประโยชน์ในการเพิ่มประสิทธิภาพบางประการ ตามที่เราคุยกัน มันใช้การแมปบริบทเพื่อประมวลผลคำขอบีบอัดเร็วขึ้น และพจนานุกรมที่ใช้ประชากรแบบไดนามิก ซึ่งมากกว่าที่ GZIP สามารถนำเสนอได้มาก และยังช่วยให้ผู้ใช้อุปกรณ์พกพาได้รับประโยชน์จากการบีบอัดด้วยเช่นกัน
ข่าวดีก็คือว่าทุกไซต์ของ Kinsta สามารถได้รับประโยชน์จากการบีบอัดข้อมูล Brotli เนื่องจากการรวม Cloudflare ที่เป็นเอกลักษณ์ของเรา ซึ่งหมายความว่าไซต์ที่โฮสต์ Kinsta ของคุณเร็วกว่าการแข่งขันโดยใช้ GZIP และโหลดอย่างรวดเร็วสำหรับผู้ที่ใช้อุปกรณ์ขนาดเล็ก
คุณมีคำถามเกี่ยวกับการบีบอัด Brotli หรือไม่? อย่าลังเลที่จะถามออกไปในส่วนความคิดเห็นด้านล่าง!