ความผันแปรของ Lighthouse

ปัจจัยหลายประการที่มีผลต่อประสิทธิภาพของหน้าเว็บ คะแนนประสิทธิภาพของ Lighthouse มีแนวโน้มที่จะเปลี่ยนแปลงเนื่องจากความแปรปรวนตามปกติของเทคโนโลยีเว็บและเครือข่ายแม้ว่าจะไม่มีการเปลี่ยนแปลงในหน้าเว็บก็ตาม

แหล่งที่มาของความแปรปรวน

ความหลากหลายในการวัดประสิทธิภาพเกิดขึ้นผ่านช่องทางต่างๆ จำนวนมากที่มีระดับผลกระทบต่างกัน ด้านล่างนี้เป็นตารางที่ประกอบด้วยแหล่งที่มาทั่วไปหลายๆ แหล่งของความแปรปรวนของเมตริก ผลกระทบทั่วไปที่มีต่อผลลัพธ์ และระดับความเป็นไปได้ที่แหล่งที่มาเหล่านี้มีแนวโน้มที่จะเกิดขึ้นในสภาพแวดล้อมที่แตกต่างกัน

แหล่งที่มา มีอิทธิพล ผู้ใช้ทั่วไป PageSpeed Insights ห้องทดลองที่มีการควบคุม
การไม่กำหนดหน้า สูง น่าจะ น่าจะ น่าจะ
ความผันแปรของเครือข่ายในพื้นที่ สูง น่าจะ ไม่น่าจะนำไปใช้ ไม่น่าจะนำไปใช้
ความผันแปรของเครือข่ายระดับ 1 สื่อ เป็นไปได้ เป็นไปได้ เป็นไปได้
ความผันแปรของเว็บเซิร์ฟเวอร์ ต่ำ น่าจะ น่าจะ น่าจะ
ความผันแปรของฮาร์ดแวร์ไคลเอ็นต์ สูง น่าจะ ไม่น่าจะนำไปใช้ ไม่น่าจะนำไปใช้
การช่วงชิงทรัพยากรของไคลเอ็นต์ สูง น่าจะ เป็นไปได้ ไม่น่าจะนำไปใช้
การไม่กำหนดเบราว์เซอร์ สื่อ บางส่วน บางส่วน บางส่วน

ด้านล่างนี้เป็นคำอธิบายโดยละเอียดเกี่ยวกับแหล่งที่มาของความแปรปรวนและผลกระทบที่มีต่อชุดรันไทม์ของ Lighthouse ร่วมกับสภาพแวดล้อมที่เป็นไปได้มากที่สุด แม้ว่าจะใช้วิธีการควบคุมและจําลองการควบคุมได้ในสภาพแวดล้อมทั้ง 3 แบบนี้ได้ แต่ผู้ใช้ปลายทางทั่วไปจะใช้การควบคุมจําลอง

การไม่กำหนดหน้า

หน้าเว็บอาจมีตรรกะที่ไม่กำหนดตายตัวที่เปลี่ยนแปลงวิธีที่ผู้ใช้ได้รับประสบการณ์การใช้งานหน้าเว็บ เช่น การทดสอบ A/B ที่เปลี่ยนเลย์เอาต์และเนื้อหาที่โหลด หรือประสบการณ์การใช้งานโฆษณาที่ต่างออกไปตามความคืบหน้าของแคมเปญ นี่เป็นแหล่งที่มาของความแปรปรวน โดยเจตนาและไม่สามารถแก้ไขได้ หากหน้าเว็บเปลี่ยนแปลงในลักษณะที่ส่งผลเสียต่อประสิทธิภาพ Lighthouse ก็ควรระบุเคสนี้ได้ การบรรเทาปัญหาเพียงอย่างเดียวในที่นี้คือส่วนของเจ้าของเว็บไซต์ในการตรวจสอบว่าหน้าเว็บเวอร์ชันเดียวกันกำลังได้รับการทดสอบระหว่างการเรียกใช้ที่ต่างกัน

ความผันแปรของเครือข่ายในพื้นที่

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

ความผันแปรของเครือข่ายระดับ 1

โดยทั่วไปแล้ว การเชื่อมต่อเครือข่ายจะมีความเสถียรมากและมีผลกระทบน้อยที่สุด แต่คำขอข้ามทางภูมิศาสตร์ กล่าวคือ การวัดประสิทธิภาพของเว็บไซต์ในจีนจากสหรัฐอเมริกา อาจเริ่มได้รับเวลาในการตอบสนองในระดับสูงจากฮอพเครือข่ายระดับ 1 ใช้การควบคุมเพื่อมาสก์ผลกระทบเหล่านี้บางส่วนด้วยการควบคุมเครือข่าย การควบคุมการจำลองจะบรรเทาผลกระทบเหล่านี้โดยการเล่นกิจกรรมในเครือข่ายซ้ำๆ ด้วยตัวเอง

ความผันแปรของเว็บเซิร์ฟเวอร์

เว็บเซิร์ฟเวอร์มีการโหลดตัวแปร และไม่ตอบสนองบ่อยเท่าเดิม เว็บไซต์ที่มีการเข้าชมต่ำซึ่งมีโครงสร้างพื้นฐานของโฮสติ้งที่ใช้ร่วมกันมักจะมีความเสี่ยงมากกว่า การควบคุมแบบใช้จะมาสก์ผลกระทบเหล่านี้บางส่วนโดยใช้เวลาในการตอบสนองคำขอขั้นต่ำในการควบคุมเครือข่าย การควบคุมจําลองมีแนวโน้มที่จะได้รับผลกระทบจากผลกระทบนี้ แต่ผลกระทบโดยรวมมักจะต่ำเมื่อเทียบกับความผันแปรของเครือข่ายอื่นๆ

ความผันแปรของฮาร์ดแวร์ไคลเอ็นต์

ฮาร์ดแวร์ที่หน้าเว็บโหลดอยู่สามารถส่งผลต่อประสิทธิภาพการทำงานได้อย่างมาก การควบคุมเชิงประยุกต์ไม่สามารถช่วยลดปัญหานี้ได้ การจำลอง การควบคุมจะบรรเทาปัญหานี้ได้บางส่วนโดยการจำกัดเวลาการดำเนินการทางทฤษฎีของงาน CPU ในระหว่างการจำลอง

การโต้แย้งทรัพยากรของไคลเอ็นต์

แอปพลิเคชันอื่นๆ ที่ทำงานในเครื่องเดียวกันขณะที่ Lighthouse ทำงานอยู่อาจทำให้เกิดการแย่งชิงทรัพยากร CPU, หน่วยความจำ และเครือข่ายได้ มัลแวร์ ส่วนขยายเบราว์เซอร์ และซอฟต์แวร์ป้องกันไวรัสมีผลกระทบอย่างมากต่อประสิทธิภาพของเว็บอย่างมาก สภาพแวดล้อมการทำงานของเซิร์ฟเวอร์แบบหลายกลุ่มผู้ใช้ (เช่น Travis, AWS ฯลฯ) อาจได้รับผลกระทบจากปัญหาเหล่านี้เช่นกัน โดยปกติแล้ว การเรียกใช้ Lighthouse หลายอินสแตนซ์พร้อมกันจะทำให้ผลลัพธ์บิดเบือนจากปัญหานี้ การควบคุมที่นำไปใช้มีความเสี่ยงต่อปัญหานี้ การจำลองการควบคุมจะบรรเทาปัญหานี้ได้บางส่วนโดยการเล่นกิจกรรมเครือข่ายอีกครั้งด้วยตนเองและกำหนดการดำเนินการ CPU สูงสุด

การไม่กำหนดเบราว์เซอร์

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

ผลกระทบของกลยุทธ์การควบคุม

ด้านล่างนี้เป็นตารางที่ประกอบด้วยแหล่งที่มาโดยทั่วไปของความแปรปรวนของเมตริกต่างๆ ผลกระทบทั่วไปที่มีต่อผลลัพธ์ และขอบเขตที่กลยุทธ์การควบคุมของ Lighthouse ต่างๆ สามารถลดผลกระทบลงได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับกลยุทธ์การควบคุมแบบต่างๆ ในเอกสารการควบคุม

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

กลยุทธ์ในการรับมือกับความแปรปรวน

แยกปัจจัยภายนอก

  • แยกหน้าเว็บของคุณจากอิทธิพลของบุคคลที่สามให้มากที่สุด การถูกโทษเมื่อความล้มเหลวตัวแปรของคนอื่นเป็นเรื่องที่สนุกมาก
  • แยกความไม่กำหนดของโค้ดของคุณเองระหว่างการทดสอบ หากคุณได้รับภาพเคลื่อนไหว แสดงขึ้นแบบสุ่ม แสดงว่าตัวเลขประสิทธิภาพอาจสุ่มได้ ด้วย
  • แยกเซิร์ฟเวอร์ทดสอบออกจากความผันผวนของเครือข่ายให้มากที่สุด ใช้ localhost หรือเครื่องที่อยู่ในเครือข่ายเดียวกันเมื่อใดก็ตามที่มีข้อกังวลเกี่ยวกับความเสถียร
  • แยกสภาพแวดล้อมของไคลเอ็นต์จากอิทธิพลภายนอก เช่น ซอฟต์แวร์ป้องกันไวรัสและส่วนขยายเบราว์เซอร์ ใช้อุปกรณ์สำหรับการทดสอบโดยเฉพาะเมื่อเป็นไปได้

หากเครื่องของคุณมีทรัพยากรจำกัดมากหรือการสร้างสภาพแวดล้อมที่สะอาดเป็นเรื่องยาก ให้ใช้สภาพแวดล้อมของห้องทดลองที่โฮสต์ เช่น PageSpeed Insights หรือ WebPageTest เพื่อทำการทดสอบให้คุณ ในกรณีที่มีการผสานรวมอย่างต่อเนื่อง ให้ใช้เซิร์ฟเวอร์เฉพาะหากเป็นไปได้ สภาพแวดล้อม CI แบบฟรีและอินสแตนซ์ที่ "เร่งประสิทธิภาพ" มักจะค่อนข้างมีความผันผวน

เรียกใช้ Lighthouse หลายครั้ง

เมื่อสร้างเกณฑ์สำหรับความล้มเหลว ไม่ว่าจะเป็นด้านจิตใจหรือแบบเป็นโปรแกรม ให้ใช้ค่ารวม เช่น ค่ามัธยฐาน เปอร์เซ็นไทล์ที่ 90 หรือค่าต่ำสุด แทนการทดสอบเดี่ยว

คะแนนมัธยฐานของคะแนน Lighthouse ซึ่งก็คือ 5 รันนั้นคงที่มากกว่า 1 รัน 1 ครั้ง และเครื่องมืออย่าง pwmetric จะเรียกใช้ Lighthouse ให้คุณโดยอัตโนมัติได้ การใช้ค่าขั้นต่ำยังช่วยได้อย่างมากมากกว่าการไม่ต้องทดสอบเลย อีกทั้งยังใช้ได้ง่ายมาก เพียงแค่เรียกใช้ Lighthouse ไม่เกิน 5 ครั้งจนกว่าจะผ่านการทดสอบ

ความคิดเห็น

หน้านี้มีประโยชน์ไหม
มี
อะไรคือสิ่งที่ดีที่สุดเกี่ยวกับหน้านี้
วิธีนี้ช่วยให้ฉันบรรลุเป้าหมายได้
ขอบคุณสำหรับความคิดเห็น หากคุณมีแนวคิดเฉพาะเกี่ยวกับวิธีปรับปรุงหน้านี้ โปรดสร้างปัญหา
เนื่องจากมีข้อมูลที่ฉันต้องการ
ขอบคุณสำหรับความคิดเห็น หากคุณมีแนวคิดเฉพาะเกี่ยวกับวิธีปรับปรุงหน้านี้ โปรดสร้างปัญหา
มีข้อมูลที่ถูกต้อง
ขอบคุณสำหรับความคิดเห็น หากคุณมีแนวคิดเฉพาะเกี่ยวกับวิธีปรับปรุงหน้านี้ โปรดสร้างปัญหา
อ่านง่าย
ขอบคุณสำหรับความคิดเห็น หากคุณมีแนวคิดเฉพาะเกี่ยวกับวิธีปรับปรุงหน้านี้ โปรดสร้างปัญหา
อื่นๆ
ขอบคุณสำหรับความคิดเห็น หากคุณมีแนวคิดเฉพาะเกี่ยวกับวิธีปรับปรุงหน้านี้ โปรดสร้างปัญหา
ไม่ได้
สิ่งที่แย่ที่สุดเกี่ยวกับหน้านี้คืออะไร
ไม่ได้ช่วยให้ฉันบรรลุเป้าหมาย
ขอบคุณสำหรับความคิดเห็น หากคุณมีแนวคิดเฉพาะเกี่ยวกับวิธีปรับปรุงหน้านี้ โปรดสร้างปัญหา
ไม่มีข้อมูลที่ฉันต้องการ
ขอบคุณสำหรับความคิดเห็น หากคุณมีแนวคิดเฉพาะเกี่ยวกับวิธีปรับปรุงหน้านี้ โปรดสร้างปัญหา
มีข้อมูลที่ไม่ถูกต้อง
ขอบคุณสำหรับความคิดเห็น หากคุณมีแนวคิดเฉพาะเกี่ยวกับวิธีปรับปรุงหน้านี้ โปรดสร้างปัญหา
อ่านยาก
ขอบคุณสำหรับความคิดเห็น หากคุณมีแนวคิดเฉพาะเกี่ยวกับวิธีปรับปรุงหน้านี้ โปรดสร้างปัญหา
อื่นๆ
ขอบคุณสำหรับความคิดเห็น หากคุณมีแนวคิดเฉพาะเกี่ยวกับวิธีปรับปรุงหน้านี้ โปรดสร้างปัญหา