ลดเวลาในการตอบกลับของเซิร์ฟเวอร์

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

ภาพหน้าจอของการตรวจสอบเวลาในการตอบกลับของเซิร์ฟเวอร์ Lighthouse ต่ำ

เวลาในการตอบกลับของเซิร์ฟเวอร์ช้าส่งผลต่อประสิทธิภาพ

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

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

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

แม้ว่าเซิร์ฟเวอร์จะไม่ต้องทํางานมากนัก แต่เวลาในการตอบสนองของเครือข่ายระหว่างไคลเอ็นต์กับเซิร์ฟเวอร์อาจทําให้เซิร์ฟเวอร์ตอบกลับช้า

วิธีปรับปรุงเวลาในการตอบกลับของเซิร์ฟเวอร์

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

การตอบสนองของเซิร์ฟเวอร์ที่ช้าอาจเกิดจากสาเหตุหลายประการ จึงมีวิธีปรับปรุงได้หลายวิธี ดังนี้

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

ใช้ CDN เพื่อลดเวลาในการตอบสนองของเครือข่าย วิธีนี้มีประสิทธิภาพเป็นพิเศษหากระบบแคชเอกสารได้ที่โหนด Edge ของ CDN

ดูรายละเอียดเพิ่มเติมได้จากคู่มือเพิ่มประสิทธิภาพ TTFB

คำแนะนำเฉพาะสแต็ก

Drupal

ลดปริมาณการรับส่งข้อมูลด้วยโมดูลการแคช Drupal อย่างน้อย 1 รายการ เช่น Internal Page Cache, Internal Dynamic Page Cache และ BigPipe และใช้ร่วมกับ CDN เพื่อปรับปรุงเวลาในการตอบสนองให้ดียิ่งขึ้น เซิร์ฟเวอร์โฮสติ้งควรใช้ประโยชน์จาก OPcache ของ PHP ลองใช้การแคชหน่วยความจำ เช่น Redis หรือ Memcached เพื่อลดเวลาในการค้นหาฐานข้อมูล สุดท้าย ใช้ธีม โมดูลที่มีประสิทธิภาพ และเซิร์ฟเวอร์ที่เร็วกว่าเพื่อลดเวลาในการตอบกลับของเซิร์ฟเวอร์

Magento

ใช้การผสานรวม Varnish ของ Magento

โต้ตอบ

หากคุณกำลังแสดงคอมโพเนนต์ของ React ใดๆ บนฝั่งเซิร์ฟเวอร์ ให้ลองใช้ renderToNodeStream() หรือ renderToStaticNodeStream() เพื่อให้ลูกค้าได้รับและรวมส่วนต่างๆ ของมาร์กอัปแทนที่จะรวมทั้งหมดในคราวเดียว

WordPress

เลือกธีมที่เรียบง่าย (ควรเป็นธีมบล็อก) และใช้การแคชแบบเต็มหน้าหรือโซลูชันเว็บไซต์แบบคงที่ ปิดใช้ปลั๊กอินที่ไม่จำเป็นเพื่อลดภาระของเซิร์ฟเวอร์

ลองอัปเกรดโฮสติ้งเป็นบริการที่มีการจัดการหรือบริการเฉพาะ

แหล่งข้อมูล