การ Crawl เดือนธันวาคม: CDN และการ Crawl

วันอังคารที่ 24 ธันวาคม 2024

เครือข่ายนำส่งข้อมูล (CDN) เหมาะอย่างยิ่งในการลดเวลาในการตอบสนองของเว็บไซต์ และโดยทั่วไปแล้วจะช่วยคุณแก้ปัญหาเกี่ยวกับการเข้าชมเว็บ ท้ายที่สุดแล้ว วัตถุประสงค์หลักของแพลตฟอร์มเหล่านี้คือการแสดงเนื้อหาของคุณอย่างรวดเร็ว แม้ว่าเว็บไซต์ของคุณจะได้รับการเข้าชมเป็นจำนวนมากก็ตาม "D" ใน CDN ย่อมาจาก "Distribution" หรือ "การกระจาย" ซึ่งหมายถึงการส่งหรือกระจายเนื้อหาไปทั่วโลก ดังนั้นเวลาในการโอนไปยังผู้ใช้จึงต่ำกว่าการโฮสต์ในศูนย์ข้อมูลแห่งเดียว ในโพสต์นี้ เราจะมาสำรวจวิธีใช้ CDN ในลักษณะที่ปรับปรุงการ Crawl และประสบการณ์ของผู้ใช้บนเว็บไซต์ รวมถึงดูรายละเอียดบางอย่างของการ Crawl เว็บไซต์ที่รองรับ CDN

สรุป: CDN คืออะไร

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

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

และสุดท้าย CDN เป็นเครื่องมือที่ยอดเยี่ยมในการปกป้องเว็บไซต์ไม่ให้มีภาระงานมากเกินไปและป้องกันภัยคุกคามด้านความปลอดภัยบางประเภท ด้วยปริมาณการเข้าชมทั่วโลกที่ CDN จัดการ CDN สามารถสร้างรูปแบบการเข้าชมที่เชื่อถือได้เพื่อตรวจหาความผิดปกติของการเข้าชมและบล็อกการเข้าถึงที่ดูเหมือนว่ามากเกินไปหรือเป็นอันตราย ตัวอย่างเช่น ในวันที่ 21 ตุลาคม 2024 ระบบของ Cloudflare ได้ตรวจหาและลดปริมาณการโจมตีแบบ DDoS ปริมาณ 4.2 Tbps (ซึ่งถือว่ามากทีเดียว) ที่เกิดขึ้นเป็นเวลาประมาณ 1 นาที

ประโยชน์ของ CDN ต่อเว็บไซต์

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

  • การแคชใน CDN: หากมีการแสดงทรัพยากร เช่น สื่อ, JavaScript และ CSS หรือแม้แต่ HTML จากแคชของ CDN เซิร์ฟเวอร์ของคุณจะไม่ต้องใช้การประมวลผลและแบนด์วิดท์ในการแสดงทรัพยากรเหล่านั้น ซึ่งจะช่วยลดภาระของเซิร์ฟเวอร์ในกระบวนการนี้ ซึ่งมักจะหมายความว่าหน้าเว็บจะโหลดเร็วขึ้นในเบราว์เซอร์ของผู้ใช้ด้วย ซึ่งสัมพันธ์กับ Conversion ที่ดีขึ้น
  • การป้องกันการโจมตีด้วยปริมาณการเข้าชมจำนวนมาก: CDN มีประสิทธิภาพดีมากโดยเฉพาะในการระบุและบล็อกการเข้าชมที่มากเกินไปหรือเป็นอันตราย ซึ่งช่วยให้ผู้ใช้เข้าชมเว็บไซต์ได้แม้ว่าจะมีบ็อตที่ทำงานผิดปกติหรือมีผู้ไม่ประสงค์ดีทำให้เซิร์ฟเวอร์ทำงานหนักเกินไป
    นอกเหนือจากการป้องกันการโจมตีแบบ DDoS แล้ว การควบคุมเดียวกันกับที่ใช้บล็อกการเข้าชมที่ไม่พึงประสงค์ยังใช้บล็อกการเข้าชมที่คุณไม่ต้องการได้ด้วย ไม่ว่าจะเป็น Crawler บางตัว ไคลเอ็นต์ที่ตรงกับรูปแบบหนึ่งๆ หรือเพียงแค่ผู้ก่อกวนที่ใช้ที่อยู่ IP เดียวกันอยู่เรื่อยๆ แม้ว่าคุณจะทำในเซิร์ฟเวอร์หรือไฟร์วอลล์ได้เช่นกัน แต่การใช้อินเทอร์เฟซผู้ใช้ของ CDN โดยปกติแล้วจะง่ายกว่ามาก
  • ความน่าเชื่อถือ: CDN บางรายสามารถแสดงเว็บไซต์ต่อผู้ใช้ได้แม้ว่าเว็บไซต์จะล่มก็ตาม แน่นอนว่าวิธีนี้อาจใช้ได้กับเนื้อหาแบบคงที่เท่านั้น แต่ก็อาจเพียงพอแล้วที่จะทำให้ผู้ใช้ไม่ย้ายไปใช้บริการของที่อื่น

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

การ Crawl ส่งผลต่อเว็บไซต์ที่มี CDN อย่างไร

CDN มีประโยชน์ในด้านการ Crawl ด้วยเช่นกัน แต่ก็อาจมีปัญหาการ Crawl บางอย่างได้ (แม้ว่าจะไม่ค่อยเกิดขึ้น) เดี๋ยว อยู่กับเราก่อน

ผลของ CDN ต่ออัตราการ Crawl

โครงสร้างพื้นฐานการ Crawl ของเราออกแบบมาเพื่อให้มีอัตราการ Crawl ที่สูงขึ้นในเว็บไซต์ที่รองรับ CDN ซึ่งจะอนุมานจากที่อยู่ IP ของบริการที่แสดง URL ที่ Crawler ของเราเข้าถึง วิธีนี้ได้ผลดีอย่างน้อยก็ส่วนใหญ่

สมมติว่าคุณเริ่มเว็บไซต์ภาพสต็อกในวันนี้และบังเอิญมีภาพ 1,000,007 ภาพในสต็อก คุณเปิดตัวเว็บไซต์ด้วยหน้า Landing Page, หน้าหมวดหมู่ และหน้ารายละเอียดสำหรับเนื้อหาทั้งหมดของคุณ ส่งผลให้มีหน้าเว็บจำนวนมาก เราได้อธิบายไว้ในเอกสารประกอบเกี่ยวกับขีดจํากัดของความสามารถในการ Crawl ว่าแม้ Google Search ต้องการ Crawl หน้าเว็บทั้งหมดเหล่านี้โดยเร็วที่สุด แต่การ Crawl ไม่ควรทำให้เซิร์ฟเวอร์ของคุณทำงานหนักเกินไป หากเซิร์ฟเวอร์เริ่มตอบกลับช้าลงเมื่อต้องรับมือกับคำขอการ Crawl ที่เพิ่มขึ้น ระบบจะจำกัดการส่งคำขอจากฝั่ง Google เพื่อไม่ให้เซิร์ฟเวอร์ทำงานหนักเกินไป เกณฑ์ในการจำกัดอัตราการส่งข้อมูลนี้จะสูงกว่ามากเมื่อโครงสร้างพื้นฐานการ Crawl ตรวจพบว่าเว็บไซต์ของคุณมี CDN รองรับ และถือว่าสามารถส่งคำขอพร้อมกันได้มากขึ้นเนื่องจากเซิร์ฟเวอร์ของคุณน่าจะจัดการกับคำขอได้ จึงทำการ Crawl เว็บช็อปได้เร็วขึ้น

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

พูดสั้นๆ ก็คือ แม้ว่าหน้าเว็บช็อปปิ้งจะรองรับ CDN แต่เซิร์ฟเวอร์ของคุณจะต้องแสดง URL 1,000,007 รายการเหล่านั้นอย่างน้อย 1 ครั้ง CDN จะช่วยคุณเกี่ยวกับแคชได้หลังจากการเรียกข้อมูลครั้งแรกเท่านั้น ซึ่งจะเป็นภาระที่หนักมากสําหรับ "Crawl Budget" และอัตราการ Crawl มีแนวโน้มที่จะสูงเป็นเวลา 2-3 วัน โปรดคำนึงถึงเรื่องนี้หากคุณวางแผนที่จะเปิดตัว URL หลายรายการพร้อมกัน

ผลของ CDN ต่อการแสดงผล

ตามที่เราได้อธิบายไว้ในบล็อกโพสต์การ Crawl ในเดือนธันวาคมเกี่ยวกับการ Crawl ทรัพยากรฉบับแรก การแยกทรัพยากรไปยังชื่อโฮสต์ของตนเองหรือชื่อโฮสต์ CDN (cdn.example.com) อาจช่วยให้บริการแสดงผลเว็บ (WRS) แสดงผลหน้าเว็บได้อย่างมีประสิทธิภาพมากขึ้น แต่มีข้อควรระวังอยู่ว่าแนวทางปฏิบัตินี้อาจส่งผลเสียต่อประสิทธิภาพหน้าเว็บเนื่องจากการเชื่อมต่อกับชื่อโฮสต์อื่นมีค่าใช้จ่ายเพิ่มเติม คุณจึงต้องพิจารณาประสบการณ์การใช้งานหน้าเว็บกับประสิทธิภาพการแสดงผลอย่างรอบคอบ

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

สุดท้ายแล้ว ให้เลือกโซลูชันที่เหมาะกับธุรกิจของคุณมากที่สุด เช่น มีชื่อโฮสต์แยกต่างหาก (cdn.example.com) สําหรับทรัพยากรแบบคงที่ สำรองชื่อโฮสต์หลักด้วย CDN หรือทําทั้ง 2 อย่าง โครงสร้างพื้นฐานการ Crawl ของ Google รองรับทั้ง 2 ตัวเลือกนี้โดยไม่มีปัญหา

กรณีที่ CDN ปกป้องมากเกินไป

ด้วยการป้องกันปริมาณมากของ CDN และวิธีที่ Crawler ทำการ Crawl ในบางครั้งบ็อตที่คุณต้องการให้อยู่ในเว็บไซต์อาจไปอยู่ในรายการที่บล็อกของ CDN ซึ่งโดยปกติแล้วจะอยู่ในไฟร์วอลล์สำหรับเว็บแอปพลิเคชัน (WAF) ซึ่งจะป้องกันไม่ให้ Crawler เข้าถึงเว็บไซต์ ซึ่งท้ายที่สุดอาจทำให้เว็บไซต์ของคุณไม่แสดงในผลการค้นหา การบล็อกอาจเกิดขึ้นได้หลายวิธี ซึ่งบางวิธีอาจส่งผลเสียต่อการแสดงเว็บไซต์ในผลการค้นหาของ Google มากกว่าวิธีอื่นๆ และคุณอาจควบคุมได้ยาก (หรือเป็นไปไม่ได้) เนื่องจากเกิดขึ้นที่ฝั่ง CDN วัตถุประสงค์ของบล็อกโพสต์นี้คือเราจะแบ่งออกเป็น 2 กลุ่ม ได้แก่ การบล็อกแบบ Hard และการบล็อกแบบ Soft

การบล็อกแบบ Hard

การบล็อกแบบ Hard คือเมื่อ CDN ส่งการตอบกลับคำขอ Crawl ที่เป็นข้อผิดพลาดในรูปแบบใดรูปแบบหนึ่ง ซึ่งได้แก่

  • รหัสสถานะ HTTP 503/429: การส่งรหัสสถานะเหล่านี้เป็นวิธีที่แนะนำเพื่อส่งสัญญาณการบล็อกชั่วคราว ซึ่งจะช่วยให้คุณมีเวลาในการตอบสนองต่อการบล็อกโดยไม่ตั้งใจจาก CDN
  • การหมดเวลาของเครือข่าย: การหมดเวลาของเครือข่ายจาก CDN จะทำให้ URL ที่ได้รับผลกระทบถูกนำออกจากดัชนีการค้นหาของ Google เนื่องจากข้อผิดพลาดเกี่ยวกับเครือข่ายเหล่านี้ถือเป็นข้อผิดพลาดแบบ "Hard" ที่ร้ายแรง นอกจากนี้ โฆษณาเหล่านี้ยังอาจส่งผลต่ออัตราการ Crawl ของเว็บไซต์อย่างมาก เนื่องจากส่งสัญญาณให้โครงสร้างพื้นฐานการ Crawl ทราบว่าเว็บไซต์มีภาระงานมากเกินไป
  • ข้อความแสดงข้อผิดพลาดแบบสุ่มที่มีรหัสสถานะ HTTP 200: หรือที่เรียกว่าข้อผิดพลาดแบบ Soft แบบนี้ไม่ค่อยดีนัก หากข้อความแสดงข้อผิดพลาดที่ Google ได้รับเป็นข้อผิดพลาดแบบ "Hard" (เช่น HTTP 500) Google จะนํา URL นั้นออกจาก Search หาก Google ตรวจไม่พบข้อความแสดงข้อผิดพลาดแบบ "Hard" ระบบอาจนำหน้าเว็บทั้งหมดที่มีข้อความแสดงข้อผิดพลาดเดียวกันออกจากดัชนีการค้นหาของ Google เนื่องจากซ้ำกัน เนื่องจากการจัดทําดัชนีของ Google ไม่ค่อยมีแรงจูงใจที่จะขอทำการ Crawl URL ซ้ำอีกครั้ง การกู้คืนจากปัญหานี้จึงอาจใช้เวลานานขึ้น

การบล็อกแบบ Soft

ปัญหาที่คล้ายกันอาจปรากฏขึ้นเมื่อ CDN แสดงข้อความคั่นหน้า "คุณแน่ใจว่าคุณเป็นมนุษย์ใช่ไหม"

Crawley จะสับสนเมื่อถูกเรียกว่ามนุษย์

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

การแก้ไขข้อบกพร่องของการบล็อก

ในกรณีที่มีการบล็อกทั้งแบบ Hard และ Soft วิธีตรวจสอบที่ง่ายที่สุดว่าทุกอย่างทำงานได้อย่างถูกต้องหรือไม่คือการใช้เครื่องมือตรวจสอบ URL ใน Search Console และสังเกตภาพที่ได้รับการแสดงผล หากแสดงหน้าเว็บของคุณ แสดงว่าทุกอย่างเรียบร้อยดี แต่หากแสดงหน้าว่าง ข้อผิดพลาด หรือหน้าเว็บที่มีการถามคำถามบ็อต คุณอาจต้องติดต่อ CDN เกี่ยวกับเรื่องนี้

นอกจากนี้ Google, เครื่องมือค้นหาอื่นๆ และผู้ให้บริการ Crawler อื่นๆ ยังเผยแพร่ที่อยู่ IP ของเราเพื่อช่วยให้คุณระบุ Crawler ของเราได้ และหากเห็นว่าเหมาะสม คุณก็สามารถนํา IP ที่บล็อกออกจากกฎ WAF หรือเพิ่มลงในรายการที่อนุญาตได้ ตำแหน่งที่คุณทำเช่นนี้ได้ขึ้นอยู่กับ CDN ที่คุณใช้อยู่ แต่โชคดีที่ CDN และ WAF แบบสแตนด์อโลนส่วนใหญ่มีเอกสารประกอบที่ยอดเยี่ยม ตัวอย่างที่เราพบจากการค้นหาเพียงเล็กน้อย (ณ เวลาที่เผยแพร่โพสต์นี้) มีดังนี้

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

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


หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับการ Crawl ดูซีรีส์เรื่องการ Crawl ในเดือนธันวาคมทั้งหมดได้ที่