บทนำสู่ HTTP/2 และความเร็วของเพจ
เผยแพร่แล้ว: 2020-01-03บทนำ
ในปี 1991 มีการเปิดตัวโปรโตคอล HTTP ตอบกลับคำขอ (HTTP 0.9) เวอร์ชันแรกที่จัดทำเป็นเอกสาร ตั้งแต่นั้นมา เว็บได้ขยายตัวขึ้นอย่างมาก และ 24 ปีต่อมา HyperText Transfer Protocol (HTTP/2) เวอร์ชันล่าสุดได้เปิดตัวในปี 2015 ซึ่งนำเสนอประโยชน์มากมายที่เป็นไปได้ต่อประสิทธิภาพของไซต์เมื่อใช้งานอย่างถูกต้อง
บทความนี้มุ่งเป้าไปที่ SEO ที่ต้องการใช้ HTTP/2 เป็นส่วนหนึ่งของแผนริเริ่มการเพิ่มประสิทธิภาพความเร็วหน้าเว็บ
HTTP/2 เป็นหัวข้อที่สมบูรณ์มากซึ่งสามารถพูดคุยได้อย่างละเอียด มีข้อมูลออนไลน์มากมายที่พูดถึง HTTP/2 และมีประโยชน์มากกว่าสำหรับผู้ใช้ปลายทางและนักพัฒนา แต่ก่อนที่คุณจะพบว่าตัวเองหมกมุ่นอยู่กับข้อมูลมากมายเกี่ยวกับ HTTP/2 ให้ตรวจสอบว่าคุณได้รับข้อมูลที่คุณต้องการแล้ว สิ่งนี้เริ่มต้นด้วยการถามคำถามที่ถูกต้อง:
- สิ่งนี้จะส่งผลโดยตรงต่อการปรับแต่งเว็บไซต์ให้ติดอันดับบนเครื่องมือการค้นหาและ/หรือความเร็วของหน้าอย่างไร
- คำแนะนำสามารถทำจากข้อมูลเชิงลึกได้หรือไม่?
- ข้อเสนอแนะสามารถดำเนินการตามความเป็นจริงได้หรือไม่?
คำถามเหล่านี้ช่วยให้คุณถาม ว่า “สิ่งที่ฉันทำอยู่มีประสิทธิภาพและมีคุณค่าหรือไม่” และสุดท้ายทำให้คุณอยู่ในตำแหน่งที่ดีขึ้นในการประเมินว่า HTTP/2 สามารถช่วยปรับปรุงเว็บไซต์ได้อย่างไร
เนื่องจากลักษณะหัวข้อกว้างๆ จึงมีความรู้จำนวนมากเกี่ยวกับ HTTP/2 ที่ไม่จำเป็นเมื่อพยายามทำความเข้าใจถึงความสำคัญของ SEO ประโยชน์หลักของ HTTP/2 สำหรับ SEO คือ Page Speed
เพื่อช่วยให้คุณสำรวจข้อมูลออนไลน์มากมาย ต่อไปนี้คือข้อมูลเบื้องต้นเกี่ยวกับ HTTP/2 ซึ่งอธิบายวิวัฒนาการจาก HTTP 1.1 ไปจนถึง Spdy ที่เข้ากันได้กับ HTTP ของ Google และในที่สุดก็เป็น HTTP/2
การทำความเข้าใจว่าเว็บมีการพัฒนาอย่างไร จะช่วยเน้นย้ำถึงการปรับปรุงที่เกิดขึ้นจากการเพิ่มโปรโตคอล HTTP/2
Google ประเมิน Page Speed อย่างไร
หากต้องการดูวิธีที่ Google ประเมิน Page Speed นั้นไม่ต้องไปไกลกว่า รายงาน ประสบการณ์ผู้ใช้ Chrome รายงานเหล่านี้ให้ตัวชี้วัดประสบการณ์ผู้ใช้สำหรับวิธีที่ผู้ใช้กำลังประสบกับจุดหมายปลายทางยอดนิยมทั่วทั้งเว็บ ซึ่งขับเคลื่อนโดยใช้เมตริกการมีส่วนร่วมของผู้ใช้ที่สำคัญ (First Paint, First Contentful Paint, First Meaningful Paint, Time to Interactive) และได้รับการสนับสนุนเพิ่มเติมผ่านเครื่องมือทั่วไป เช่น Page Speed Insights โครงการ Google Big Query สาธารณะ Lighthouse และการทดสอบหน้าเว็บ การใช้ตัวชี้วัดและเครื่องมือเหล่านี้สามารถช่วยปรับปรุงความเร็วเพจได้
บทนำสู่ HTTP/2
HTTP 1.1
ภายในปี 2015 HTTP 1.1 ล้าสมัยแล้ว หมดยุคแล้วที่หน้าเว็บ/ไซต์ถูกสร้างขึ้น/อาศัย HTML พื้นฐาน, CSS และ JavaScript ตลอดจนทรัพยากรและเฟรมเวิร์กต่างๆ มากมาย ยุคก่อนปี 2015 มีพื้นฐานมาจากแนวคิดที่ว่า คุณถูกจำกัดคำขอต่อการเชื่อมต่อ TCP หนึ่งครั้ง สิ่งนี้นำไปสู่สถานการณ์ที่เว็บไคลเอ็นต์มีทรัพยากรจำนวนมากเข้าคิวรอดาวน์โหลด ทำให้เกิดความแออัดของเครือข่ายและเวลาในการโหลดหน้าเว็บช้า
HTTP/2 ได้รับการออกแบบเพื่อกำหนดเป้าหมายสามส่วนหลักของการปรับปรุงเพื่อบรรเทาปัญหาที่กล่าวถึงข้างต้น:
- ความเรียบง่าย
- ประสิทธิภาพสูง
- ความทนทาน
ประโยชน์ของ SEO สำหรับ HTTP/2
Page Speed อาจเป็นเหตุผลหลักที่ SEO จะพิจารณาใช้ HTTP/2 ในเว็บไซต์ของตนเองหรือของลูกค้า Page Speed/ Performance คือชุดของตัวชี้วัดซึ่งเป็นปัจจัยในการจัดอันดับ ตั้งแต่ปี 2010 สำหรับการสืบค้นบนเดสก์ท็อป เนื่องจากการใช้อุปกรณ์มือถือเพิ่มมากขึ้น ในเดือนกรกฎาคม 2018 Google ได้ประกาศอย่างเป็นทางการ ว่า Page Speed จะกลายเป็นปัจจัยอันดับสำหรับมือถือ
HTTP/2 มีฟังก์ชันหลัก 3 อย่างซึ่งสามารถนำมาใช้เมื่อเพิ่มประสิทธิภาพไซต์สำหรับ Page Speed:
- มัลติเพล็กซ์
- พุชเซิร์ฟเวอร์
- การจัดลำดับความสำคัญของสตรีม
มัลติเพล็กซ์
มัลติเพล็กซ์ช่วยให้เว็บไคลเอ็นต์รวมคำขอหลายรายการภายในการเชื่อมต่อ TCP เดียว ส่งผลให้โหลดเซิร์ฟเวอร์น้อยลงและลดความแออัดของเครือข่าย
เว็บไคลเอ็นต์สมัยใหม่ (Chrome, Firefox, Safari และ Opera) ที่ใช้โปรโตคอล HTTP 1/1.1 รุ่นเก่ามีขีดจำกัดเริ่มต้นสำหรับจำนวนการเชื่อมต่อ TCP พร้อมกันต่อชื่อโฮสต์ ดังนั้น เว็บไคลเอ็นต์ที่ใช้ HTTP 1/1.1 อาจมีปัญหากับความแออัดของ TCP ได้อย่างง่ายดาย สำหรับเว็บไคลเอ็นต์สมัยใหม่ ปัญหานี้แก้ไขได้โดยใช้มัลติเพล็กซ์ ซึ่งสามารถให้การปรับปรุงที่สำคัญที่สุดบางอย่างกับความเร็วของเพจ
ด้านล่างนี้คือประโยชน์ของ Multiplexing โดยใช้การเปรียบเทียบ HTTP/1.1 และ HTTP/2 ซึ่งแสดง พฤติกรรมทั่วไปเมื่อ HTTP/2 multiplexing ถูกเปิดใช้งานและไม่ได้เปิดใช้งาน

( WebpageTest, HTTP/1.1, ไม่มีการสาธิตการมัลติเพล็กซ์ )

( WebpageTest, HTTP/2, สาธิตการมัลติเพล็กซ์ )
ในภาพด้านบน น้ำตกตามประสิทธิภาพ ใช้เพื่อสาธิตการโหลดทรัพยากรระหว่าง ผู้ใช้ (ผู้ร้องขอทรัพยากร) และ เซิร์ฟเวอร์ (ผู้ที่ตอบสนองต่อทรัพยากร) ของหน้าเว็บ โดยทั่วไปแล้ว ทรัพยากรของหน้าจะรวมถึง HTML, JavaScript, CSS และรูปภาพ น้ำตกตามประสิทธิภาพแสดงให้เห็นถึงจุดที่แน่นอนเมื่อมีการเรียก ดาวน์โหลด และแสดงผลทรัพยากรเฉพาะภายในไคลเอนต์ ซึ่งมีความสำคัญอย่างยิ่งต่อการค้นหา ประเมิน และวิเคราะห์ปัญหาความเร็วหน้าเว็บบนไซต์ ดังที่แสดงโดยรูปภาพด้านบน “HTTP/2” ทรัพยากรทั้งหมดเริ่มดาวน์โหลดพร้อมกันโดยไม่ต้องโหลดทรัพยากรใดๆ ที่จุดอื่น เนื่องจาก HTTP/2 ใช้มัลติเพล็กซ์และไม่ต้องอาศัยการส่งคำขอเพียง 1 คำขอผ่านการเชื่อมต่อ TCP เดียวอีกต่อไป คุณจึงสามารถดาวน์โหลดทรัพยากรหลายรายการพร้อมกันได้ดังที่ด้านบน ในทางตรงกันข้าม ดังที่แสดงในรูปภาพ “HTTP/1.1” ทรัพยากรไม่ได้ดาวน์โหลดพร้อมกันเนื่องจากไม่สามารถใช้ฟังก์ชันมัลติเพล็กซ์ได้ เบราว์เซอร์สมัยใหม่โดยเฉลี่ยภายใต้ HTTP/1.1 สามารถมีการเชื่อมต่อได้ 6 รายการพร้อมกัน แต่ข้อดีสำหรับการนำ HTTP/2 ไปใช้ก็คือ TCP handshake ไม่จำเป็นสำหรับทุกๆ คำขอ ในขณะที่ไม่ว่าจะมีการเชื่อมต่อ HTTP/1.1 เริ่มต้นพร้อมกันกี่เครื่องก็ตาม กระบวนการเชื่อมต่อจะต้องเสร็จสิ้นทุกครั้ง ดังนั้นพวกเขาจึงเริ่มดาวน์โหลดที่จุดต่าง ๆ ซึ่งทำให้ผู้ใช้โหลดหน้านานขึ้น

( Upwork HTTP/1.1 เทียบกับ HTTP/2 ไดอะแกรม )
โปรแกรมรวบรวมข้อมูลการค้นหา เช่น Google และ Bing ไม่ได้รับประโยชน์โดยตรงจากการใช้ HTTP/2 ตามที่อธิบายไว้ข้างต้น ประโยชน์หลักจากการเพิ่มประสิทธิภาพเหล่านี้อาจเป็นไปได้สำหรับ Page Speed ดังนั้นแม้ว่าการใช้ HTTP/2 อาจไม่ส่งผลต่อโปรแกรมรวบรวมข้อมูลการค้นหาโดยตรง แต่ก็สามารถส่งผลกระทบต่อ Page Speed ซึ่งเป็นปัจจัยในการจัดอันดับโดยตรงสำหรับการค้นหาของ Google สำหรับเดสก์ท็อปตั้งแต่ปี 2010 และการค้นหาบนมือถือตั้งแต่เดือนกรกฎาคม 2018 ดังนั้นจึงเป็นเรื่องสำคัญที่เว็บไซต์จะไม่แสดงผล ประสบการณ์ที่ช้าสำหรับผู้ใช้ เนื่องจาก Google อาจระงับประสิทธิภาพโดยส่งผลกระทบต่อการจัดอันดับ หรือเมื่อเร็วๆ นี้ ตั้งค่าสถานะผู้ใช้ว่าไซต์ของคุณอาจทำงานช้า
พุชเซิร์ฟเวอร์
Server Push ช่วยให้เซิร์ฟเวอร์เฉพาะหรือเครือข่าย Edge สามารถส่งทรัพยากรไปยังเว็บไคลเอ็นต์ได้เมื่อไคลเอ็นต์ไม่ได้รับการร้องขอ เพื่อให้เข้าใจว่าเซิร์ฟเวอร์พุชทำงานอย่างไร สิ่งสำคัญอันดับแรกคือต้องเข้าใจรูปแบบการตอบกลับคำขอที่เว็บไซต์ปฏิบัติตาม ผู้ใช้ร้องขอหน้าจากเว็บไซต์ และเซิร์ฟเวอร์ตอบสนองด้วยเนื้อหา/ทรัพยากรที่ร้องขอ
ตามสมมุติฐาน ให้นึกถึงไซต์ที่มีสไตล์ทั้งหมดที่กำหนดไว้ในสไตล์ชีตภายนอกที่เรียกว่า styles.css เมื่อผู้ใช้ร้องขอโครงกระดูก HTML สำหรับหน้า (สมมติว่าในกรณีนี้ index.html) เซิร์ฟเวอร์พุชสามารถ "ดัน" CSS ไปยังผู้ใช้ทันทีหลังจากเริ่มส่งการตอบสนองต่อ index.html

( S mashing Magazine, Server Push )
ก่อนที่จะทำความเข้าใจว่า Server Push สามารถช่วยปรับปรุง Page Speed ได้อย่างไร สิ่งสำคัญคือต้องเข้าใจว่าเบราว์เซอร์ทำงานอย่างไรกับทรัพยากรต่างๆ เช่น รูปภาพ, CSS และ JavaScript เพื่อให้ปรากฏภายในเบราว์เซอร์ของคุณ คุณเห็นไหมว่าเบราว์เซอร์ส่งคำแนะนำสำหรับวิธีดาวน์โหลดรูปภาพ, CSS และทรัพยากร JavaScript ในการเยี่ยมชมเว็บไซต์ครั้งแรก คุณมักจะส่งคำขอ GET ซึ่งเป็นไฟล์ .html เมื่อได้รับไฟล์.
Server Push ช่วยปรับปรุง Page Speed อย่างไร
เมื่อใช้ Server Push จำนวนคำขอ GET ที่ต้องการจากเบราว์เซอร์ (แบบไปกลับ) จะลดลง และหลีกเลี่ยงความล่าช้าในการแสดงผลซึ่งทำให้เวลาในการโหลดหน้าเว็บเพิ่มขึ้น สิ่งนี้สามารถช่วยปรับปรุงเวลาในการแสดงผลสำหรับเว็บไคลเอ็นต์ได้อย่างมาก ซึ่งช่วยให้เว็บเพจปรากฏเร็วขึ้นสำหรับผู้ใช้ ซึ่งจะทำให้พวกเขาได้รับประสบการณ์ที่ดียิ่งขึ้น
แม้ว่า Server Push จะไม่ส่งผลกระทบโดยตรงต่อวิธีที่ Googlebot รวบรวมข้อมูลเว็บไซต์ของคุณ หรือโปรแกรมรวบรวมข้อมูลอื่นๆ แต่ประโยชน์ SEO นั้นได้มาจากการปรับปรุงปัจจัยที่เน้นผู้ใช้เป็นศูนย์กลาง เช่น First Paint และเนื้อหาที่มีความหมายแรก
การใช้การทดสอบหน้าเว็บ, Lighthouse, Page Speed Insights และรายงานประสบการณ์ผู้ใช้ Chrome คุณสามารถกำหนดได้ว่าไซต์/เพจมีประสิทธิภาพเป็นอย่างไรเมื่อเปรียบเทียบกับคู่แข่งในอุตสาหกรรมเดียวกัน ด้านล่างนี้เป็นภาพสองภาพที่สาธิตการใช้งานโดยไม่มี (ภาพที่ 1) และด้วย Server Push (ภาพที่ 2)

(ทดสอบหน้าเว็บโดยไม่ต้องพุชเซิร์ฟเวอร์)

(WebpageTest, HTTP/1.1, พร้อมเซิร์ฟเวอร์พุช)
ด้วยการพุชของเซิร์ฟเวอร์ เซิร์ฟเวอร์สามารถกำหนดค่าให้ส่งส่วนประกอบของหน้าเพิ่มเติมเสมอ (เช่น ไฟล์ CSS, JavaScript และรูปภาพ) หากมีการร้องขอให้ส่งผ่านไฟล์ .html ที่มีส่วนประกอบเหล่านี้
ในน้ำตกด้านบน เราจะเห็นว่า push.php ใช้ไฟล์ CSS สี่ไฟล์

หากไม่มีเซิร์ฟเวอร์พุช เบราว์เซอร์จะต้องรับไฟล์ push.php แยกวิเคราะห์ HTML แล้วส่งคำขอเฉพาะสำหรับไฟล์ CSS เพิ่มเติมแต่ละไฟล์ เมื่อได้รับไฟล์ CSS ทั้งหมดแล้วจึงจะสามารถเริ่มใช้งานในกระบวนการแสดงผลได้
เมื่อเปิดใช้งานการพุชของเซิร์ฟเวอร์ คำขอ push.php จะทริกเกอร์เซิร์ฟเวอร์ให้ส่งไฟล์ CSS สี่ไฟล์โดยอัตโนมัติ เบราว์เซอร์ได้รับและสามารถเริ่มใช้งานในกระบวนการแสดงผลได้เร็วกว่ามาก ซึ่งหมายความว่าเบราว์เซอร์สามารถเริ่มแสดงผลเนื้อหาของหน้าได้เร็วกว่ามาก ซึ่งส่งผลให้มีการวัดความเร็วหน้าเว็บที่ดีขึ้น
การจัดลำดับความสำคัญ HTTP/2
HTTP/2 Prioritization ควบคุมลำดับการโหลดทรัพยากร กลับไปยังเจ้าของไซต์ เมื่อดำเนินการอย่างถูกต้องแล้ว การจัดลำดับความสำคัญจะเป็นประโยชน์ต่อประสบการณ์ของผู้ใช้และความเร็วของเพจ/ไซต์โดยส่งทรัพยากรของเพจตามลำดับที่เหมาะสมที่สุด ซึ่งจะสร้างประสบการณ์ผู้ใช้ที่ "รวดเร็ว"
ถ้าเราดูที่ HTTP/1.1 รุ่นก่อนของ HTTP/2 เว็บไคลเอ็นต์จะควบคุมลำดับเวลาที่จะโหลดทรัพยากร ดังที่กล่าวไว้ข้างต้น เนื่องจากการเชื่อมต่อ TCP แต่ละครั้งสามารถรองรับทรัพยากรได้ครั้งละหนึ่งรายการเท่านั้น ขึ้นอยู่กับเบราว์เซอร์ที่จะกำหนดเวลาคำขอโดยตัดสินใจว่าจะเลือกแหล่งข้อมูลใดและจำนวนการเชื่อมต่อที่จะเปิดพร้อมกัน
ก่อนที่จะพูดถึงวิธีการดำเนินการ สิ่งสำคัญคือต้องเข้าใจว่าทำไมเราจึงต้องการใช้การจัดลำดับความสำคัญสำหรับทรัพยากรของเรา
หากเรามีรูปภาพที่ด้านบนสุดของหน้าและรูปภาพที่ด้านล่างสุดของหน้า ตามหลักเหตุผลแล้ว เราต้องการให้แน่ใจว่ารูปภาพที่ด้านบนโหลดก่อนรูปภาพที่ด้านล่าง แนวคิดนี้ช่วยแสดงให้เห็นความสำคัญและผลกระทบของการจัดลำดับความสำคัญ HTTP/2 ที่สามารถทำได้ การจัดลำดับความสำคัญ HTTP/2 ช่วยให้เราระบุได้ว่าทรัพยากรใดควรส่งก่อนและโหลดก่อนทรัพยากรอื่น (ไม่ว่าจะเป็น JavaScript, CSS หรือรูปภาพ) ดังนั้นจึงมั่นใจได้ว่าจะโหลดหน้าเว็บได้เร็วที่สุด
แม้ว่าขณะนี้เบราว์เซอร์สามารถขอทรัพยากรได้หลายรายการพร้อมกันผ่านการเชื่อมต่อ TCP เดียวโดยใช้มัลติเพล็กซ์ แต่ขณะนี้ยังสามารถระบุข้อมูลลำดับความสำคัญกับคำขอแต่ละรายการเพื่อช่วยกำหนดว่าควรจัดส่งทรัพยากรเมื่อใด/อย่างไร หากทั้งเซิร์ฟเวอร์และเบราว์เซอร์สนับสนุนการจัดลำดับความสำคัญ HTTP/2 เบราว์เซอร์ควรกำหนดกฎสำหรับการจัดลำดับความสำคัญโดยใช้แบนด์วิดท์เต็มรูปแบบโดยไม่ต้องมีทรัพยากรที่แข่งขันกันเอง เพื่อให้เข้าใจดียิ่งขึ้นว่ากระบวนการจัดลำดับความสำคัญทำงานอย่างไร สิ่งสำคัญคือต้องหารือเกี่ยวกับพารามิเตอร์สามตัวซึ่งมีความสำคัญสำหรับการจัดลำดับความสำคัญของ HTTP/2:
สตรีม: นี่คือการไหลของไบต์แบบสองทิศทางภายในการเชื่อมต่อที่สร้างขึ้นซึ่งอาจมีหนึ่งหรือข้อความ
สตรีมหลัก: นี่คือสตรีมที่ทรัพยากรขึ้นอยู่กับ
สตรีมย่อย: นี่เป็นสตรีมที่ขึ้นต่อกันของสตรีมหลัก พวกเขาใช้พาเรนต์เดียวกันและเรียกว่าสตรีมลูก
น้ำหนัก: นี่คือตัวเลขที่จัดสรรระหว่าง 1 ถึง 256 ซึ่งระบุจำนวนแบนด์วิดท์ที่จะจัดสรรให้กับสตรีมหากมีการแชร์การเชื่อมต่อหลายสตรีม แบนด์วิดท์ถูกจัดสรรให้สัมพันธ์กับน้ำหนักของสตรีมอื่นๆ ที่ใช้งานอยู่ทั้งหมด
Exclusive Bit: นี่คือแฟล็กที่ระบุว่าควรดาวน์โหลดสตรีมโดยไม่แชร์แบนด์วิดท์กับสตรีมอื่น
กรอบส่วนหัว: นี่คือการระบุสำหรับสตรีมที่เป็นของเฟรม
Binary Framing Layer: นี่คือวิธีการห่อหุ้มและถ่ายโอนข้อความ HTTP ระหว่างไคลเอนต์และเซิร์ฟเวอร์
ตัวอย่างด้านล่างแสดงตัวอย่างข้างต้น:

( การจัดลำดับความสำคัญของสตรีม HTTP/2 ของ Google Developers )
ในการดำเนินการจัดลำดับความสำคัญ HTTP/2 คุณจะต้องเพิ่มข้อมูลการจัดลำดับความสำคัญภายใน Headers Frame ซึ่งอยู่ภายใน HTTP/2 Binary Framing Layer ใหม่ สตรีมหลักและการขึ้นต่อกัน/ไม่ขึ้นกับสตรีมย่อยอื่นๆ จะกำหนดลำดับความสำคัญ/การถ่วงน้ำหนัก และส่งผลให้ส่งไปยังเว็บไคลเอ็นต์ของทรัพยากร
แม้ว่าขณะนี้การจัดลำดับความสำคัญของ HTTP/2 จะได้รับการสนับสนุนในหลายแพลตฟอร์ม แต่ CDN และผู้ให้บริการโฮสต์หลายรายไม่รองรับการจัดลำดับความสำคัญของ HTTP/2 ดังนั้นจึงเป็นเรื่องสำคัญที่จะต้องตรวจสอบให้แน่ใจว่าคุณกำลังใช้ผู้ให้บริการ CDN/โฮสต์ที่สนับสนุนการจัดลำดับความสำคัญ HTTP/2 หากคุณต้องการใช้เทคนิคการเพิ่มประสิทธิภาพนี้ ด้านล่างนี้คือตารางที่อธิบายว่า CDN/hosting/servers ใดสามารถและไม่สามารถรองรับการจัดลำดับความสำคัญของ HTTP/2 ได้
การจัดลำดับความสำคัญ HTTP/2 - ความเข้ากันได้ของเซิร์ฟเวอร์ทั่วไป/โฮสติ้ง/CDNs

การเปรียบเทียบนี้ถูกต้องเมื่อ 02/01/2020 แต่ควรตรวจสอบว่าผู้ให้บริการที่มีศักยภาพได้ปรับปรุงความเข้ากันได้หรือไม่ก่อนตัดสินใจเลือก
สิ่งสำคัญคือต้องพิจารณาเบราว์เซอร์เฉพาะอย่างมีวิจารณญาณ เนื่องจากเบราว์เซอร์บางตัวไม่สนับสนุนการจัดลำดับความสำคัญของ HTTP/2 และจัดลำดับความสำคัญต่างกันเนื่องจากเป็นเว็บไคลเอ็นต์ที่แตกต่างกัน ด้านล่างนี้คือตารางที่อธิบายว่าเว็บไคลเอ็นต์ใดสามารถรองรับการจัดลำดับความสำคัญของ HTTP/2 ได้
ความเข้ากันได้ของไคลเอ็นต์เว็บการจัดลำดับความสำคัญของ HTTP/2

การจัดลำดับความสำคัญ HTTP/2 สามารถปรับปรุงการรับรู้ของผู้ใช้เกี่ยวกับ Page/Site Speed ได้อย่างมาก และจะส่งผลในทางบวกต่อข้อมูลที่สะสมภายในรายงานประสบการณ์ของผู้ใช้ Chrome แม้ว่าการเพิ่มประสิทธิภาพนี้จะไม่มีผลกระทบต่อโปรแกรมรวบรวมข้อมูลการค้นหา เช่น Googlebot แต่เครื่องมือต่างๆ เช่น Lighthouse และ Page Speed Insights จะช่วยคุณประเมินผลกระทบของการจัดลำดับความสำคัญ HTTP/2 ต่อประสิทธิภาพความเร็วหน้าเว็บจากมุมมองของผู้ใช้
ด้วยการกำหนดค่าน้ำหนักของสตรีมอย่างถูกต้องกับทั้งเซิร์ฟเวอร์และไคลเอ็นต์ที่ใช้ CDN/โฮสต์ที่สนับสนุน HTTP/2 คุณจะสามารถปรับปรุงเมตริกความเร็วหน้าเว็บสำหรับไคลเอ็นต์ของคุณได้อย่างมาก
ข้อกำหนดเบื้องต้นสำหรับ HTTP/2 . คืออะไร
ก่อนที่คุณจะสามารถใช้ประโยชน์จากความเร็วของ HTTP/2 ได้ ให้ตรวจสอบว่าคุณสามารถใช้งานได้แล้ว มีข้อกำหนดเบื้องต้นบางประการที่ต้องนำมาพิจารณา:
- สิ่งสำคัญคือต้องตรวจสอบให้แน่ใจว่าเปิดใช้งาน HTTPS
- ใช้ใบรับรอง TLS จากหน่วยงานที่ตรวจสอบสิทธิ์แล้วเปิดใช้งานและติดตั้งใบรับรอง
- ตรวจสอบให้แน่ใจว่าซอฟต์แวร์เว็บเซิร์ฟเวอร์ของคุณ เช่น Nginx, Apache และ IIS รองรับ HTTP/2 รายการรับรองความถูกต้องทั้งหมดสำหรับการสนับสนุนสามารถดูได้ที่ http://ayi.ma/browsershttp2 ซึ่งจะแสดงการสนับสนุนเบราว์เซอร์สำหรับ HTTP/2 หากคุณกำลังมองหาการสนับสนุน HTTP/2 สำหรับ CDN's/Hosting โปรดดู ที่ http://ayi.ma/serverhosting
ข้อผิดพลาดทั่วไป/สิ่งที่ต้องเปลี่ยนแปลงด้วยการแนะนำ HTTP/2
เนื่องจากข้อจำกัดของโปรโตคอล HTTP 1.0 และ HTTP 1.1 เวอร์ชันก่อนหน้า นักพัฒนาซอฟต์แวร์และ SEO ได้พยายามหาวิธีแก้ไขปัญหามากมายที่ข้อจำกัดเหล่านี้นำเสนอสำหรับประสิทธิภาพความเร็วและความปลอดภัยของเพจ
ในที่สุด พวกเขาสามารถค้นหา "การแฮ็ก" เพื่อก้าวข้ามข้อจำกัดเหล่านี้ได้ แต่วิธีการมากมายเหล่านี้ทำให้นักพัฒนาทำงานมากขึ้น แฮ็กเหล่านี้ที่คุณอาจถามมีอะไรบ้าง ต่อไปนี้คือแฮ็กที่พบบ่อยที่สุดบางส่วนที่คุณจะเห็นในไซต์ ซึ่งสามารถแก้ไขได้ผ่านการใช้งาน HTTP/2 ที่ถูกต้อง
หลีกเลี่ยงการแชร์โดเมน
น่าแปลกที่เว็บไซต์จำนวนมากยังคงใช้แฮ็คนี้แม้ว่าจะมีการใช้ HTTP/2 อย่างถูกต้องก็ตาม เมื่อเปิดใช้งาน HTTP/2 สิ่งสำคัญคือต้องหลีกเลี่ยงการใช้การแบ่งส่วนข้อมูลโดเมน Domain Sharding เป็นเทคนิคในการแบ่งทรัพยากรตามชื่อโฮสต์ต่างๆ ซึ่งช่วยให้สามารถให้บริการทรัพยากรพร้อมกันได้มากขึ้น
ด้วยโปรโตคอล HTTP/2 ที่อัปเดต การแบ่งโดเมนจึงไม่จำเป็นอีกต่อไป อันที่จริงแล้วทำให้เกิดปัญหามากกว่าที่จะแก้ไขได้ หาก HTTP/2 ได้รับการกำหนดค่าและเปิดใช้งานอย่างถูกต้องสำหรับไซต์ของคุณ และคุณใช้ Domain Sharding อยู่ด้วย แสดงว่าคุณกำลังต่อต้านผลประโยชน์บางประการของ HTTP/2 เนื่องจากเบราว์เซอร์จะไม่ได้รับประโยชน์จากมัลติเพล็กซ์และการดาวน์โหลดจากชื่อโฮสต์หลายชื่อ
นอกจากนี้ การใช้ Domain Sharding คุณจะทำลายการจัดลำดับความสำคัญของสตรีม และทรัพยากรของคุณจะไม่สามารถโหลดเพื่อใช้ Page Speed ให้เกิดประโยชน์สูงสุดได้
ใช้เซิร์ฟเวอร์ Push อย่างเหมาะสม
Server Push มีข้อเสียบางประการที่คุณควรทราบ อันที่จริงการพุชของเซิร์ฟเวอร์อาจมีการใช้มากเกินไป และคุณควรเลือกเมื่อเลือกว่าจะใช้เมื่อใด คุณไม่จำเป็นต้องผลักดันทรัพยากรมากเกินไปเพราะอาจทำให้เว็บไคลเอ็นต์ดาวน์โหลดไม่เฉพาะ HTML แต่ทุกอย่างที่ "ผลัก" ด้วย ซึ่งหมายความว่าหน้าเว็บอาจใช้เวลาในการโหลดและแสดงผลนานขึ้น (เพิ่มเมตริกที่เน้นผู้ใช้เป็นศูนย์กลางซึ่ง Google เน้นเช่น Time to Interactive)
ข้อผิดพลาดทั่วไปประการที่สองสำหรับการพุชของเซิร์ฟเวอร์คือการหาวิธีไม่ส่งทรัพยากรที่เว็บไคลเอ็นต์มีอยู่แล้ว สามารถควบคุมได้หลายวิธี วิธีหนึ่งคือการเลือกที่จะไม่ส่งทรัพยากรไปยังผู้ใช้ที่กลับมา ดังนั้นจึงอนุญาตให้ผู้ใช้ที่กลับมาใช้สินทรัพย์ที่แคชไว้ นี่เป็นวิธีปฏิบัติที่ง่ายที่สุด สามารถทำได้โดยการตรวจสอบส่วนหัวของแคชสำหรับทรัพยากรเพื่อให้แน่ใจว่าส่วนหัวไม่ทับซ้อนกับการใช้งานพุชของเซิร์ฟเวอร์
การทดสอบในชีวิตจริงภายใต้ HTTP/2
ความรู้เชิงทฤษฎีมีความสำคัญเสมอสำหรับการวางรากฐานเพื่อทำความเข้าใจ HTTP/2 และประโยชน์ของมัน เมื่อเข้าใจและเข้าใจแนวคิดแล้ว แม้ว่าการทดสอบทฤษฎีเหล่านี้เป็นสิ่งสำคัญเพื่อวัดผลกระทบที่ HTTP/2 สามารถทำได้กับ Page Speed
ตอนที่ 2 ของซีรี่ส์ Page Speed นี้ HTTP/2 ในชีวิตจริง - การใช้การทดสอบและวิเคราะห์เว็บไซต์ จะกล่าวถึงประโยชน์ที่แท้จริงของ HTTP/2 ในเรื่องความเร็วของเพจและมูลค่าของ SEO ดังนั้นอย่าพลาด!
แล้ว HTTP/3 ล่ะ?
แม้ว่า HTTP/3 จะแสดงศักยภาพที่ชัดเจนในฐานะโปรโตคอลที่สืบทอดต่อไปยัง HTTP/2 แต่ก็ไม่ได้และไม่ควรส่งสัญญาณการสิ้นสุดของ HTTP/2 สำหรับ SEO ทั่วทั้งเว็บ เช่นเดียวกับการพัฒนาครั้งสำคัญใหม่ๆ ของเว็บทั่วโลก จะต้องผ่านขั้นตอนการเปิดตัวตามปกติ และอาจต้องใช้เวลาพอสมควรกว่าที่เว็บไซต์จะปรับใช้โปรโตคอลใหม่ และก่อนที่มันจะกลายเป็นมาตรฐานโดยพฤตินัยในอุตสาหกรรม SEO การใช้งาน HTTP/2 ยังคงแสดงถึงประโยชน์และประโยชน์ง่ายๆ ที่เมื่อนำไปใช้อย่างถูกต้องจะช่วยปรับปรุงประสิทธิภาพของเว็บไซต์ของคุณได้
