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