Cloudflare ได้ออกมาแนะนำถึงกลไกของการทำ Tier ที่ฉลาดขึ้นในการทำ Caching เพื่อลดการเข้าถึงเซิร์ฟเวอร์จริง (Origin)
credit : https://blog.cloudflare.com/
การทำ Caching จะช่วยลดการ Request ของผู้ใช้จากการวิ่งตรงเข้าไปยังเซิร์ฟเวอร์จริง (Origin)
ซึ่งโดยทั่วไปสามารถเลือกให้ Data Center เป็นReverse Proxy (ตามรูปประกอบ)
อย่างไรก็ตาม หากเรียกข้อมูล Cache ใน Data Center ไม่พบ (Cache Miss) จะต้องไปทำการ Copy ข้อมูลมาจากเซิร์ฟเวอร์จริงเหมือนเดิม ถึงแม้ว่าจะมีข้อมูลอยู่ใน Data Center อื่นก็ตาม แต่ด้วยความที่ไม่มีข้อมูลซึ่งกันและกัน Cloudflare จึงได้คิดวิธีการแก้ปัญหาเรื่องการลดอัตราการเกิด Cache Miss และสร้างเส้นทางที่ดีที่สุดให้แก่การ Request ด้วย Tiered Cache
Tiered Cache มีไอเดีย เหมือน Tree Structure (ลด Cost ของการ Search) คือเลือก Data Center หนึ่งมาเป็น Cache ให้ Data Center อื่นๆ (ตามภาพประกอบด้านล่าง) โดยวิธีการเลือกว่าจะให้ Data Center ไหนเป็น Cache หลักจะอยู่ภายใต้ส่วนที่เรียกว่า Topology อย่างไรก็ดีปัญหาคือวิธีการนี้ยังไม่ดีที่สุดเพราะบางทีเส้นทางของเซิร์ฟเวอร์ปลายทางของลูกค้า Cloudflare ไม่อาจรู้ได้จึงไม่เห็นภาพรวม ดังนั้นบางองค์กรก็ต้องทำงานร่วมกับ Cloudflare เพื่อประกอบให้ได้กระบวนการที่เหมาะสม
ด้วยเหตุนี้เองCloudflare จึงใช้ Topology (Generic) ที่ได้ผลดี ให้สามารถบาลานซ์ความเป็นกลางของ Latency และอัตราของ Cache Hit โดยเลือก Data Center ที่มีขนาดใหญ่และอยู่ใน Geolocation เดียวกันเป็นตัวแทนของเซิร์ฟเวอร์จริง รวมถึงมีวิธีการจัดการปัญหาหาก Data Center ที่เป็น Cache ล่มไป
ล่าสุด Smart Topology เป็นวิธีการพิเศษที่ช่วยให้กระบวนการ Tiered Cache มีความชาญฉลาดขึ้น สามารถตรวจสอบ IP Geolocation และทำ TCP Handshake เพื่อตรวจสอบ Latency ระหว่างData Center ไปยังเซิร์ฟเวอร์จริงที่มีค่าน้อยที่สุดเพื่อเลือกเส้นทางที่ดีที่สุด
อย่างไรก็ดีวิธีการนี้ตั้งอยู่บนสมมติฐานที่ว่าเซิร์ฟเวอร์จริงตั้งอยู่ในพิกัดเดียว นอกจากนี้ยังมีการจัดการปัญหาหากมีการทำ Anycast ในผู้ให้บริการ Cloud ระหว่างเส้นทางไปยังเซิร์ฟเวอร์ที่จะทำให้การวัด Latency ไม่แม่นยำ โดยCloudflare จะอ้างอิงตามข้อมูลทั้งหมดที่ตนพึงวัดได้โดยไม่ต้องร้องขอข้อมูลจากผู้ใช้