Cloudflare ประหยัด RAM 100 TB ด้วยคณิตศาสตร์และ Rust: ลดจุดแฮชใน consistent hashing ลง 90% โดยการกระจายโหลดแทบไม่เปลี่ยน
Cloudflare ลดหน่วยความจำของบริการกระจายโหลดภายในลงรวม 100 TB ทั่วโลก จากการตั้งคำถามกับค่าตั้งต้นที่ทุกคนใช้กันมาหลายปี คือจำนวนจุดแฮชต่อเซิร์ฟเวอร์ใน consistent hashing การคำนวณพบว่าจุดแฮช 90,000 จุดสุดท้ายต่อเซิร์ฟเวอร์ช่วยให้โหลดกระจายสม่ำเสมอขึ้นเพียง 0.7% และเมื่อเกินราว 10,000 จุด การชนกันของค่าแฮชกลับทำให้แย่ลง ทีมจึงลดจุดแฮชลง 90% และบีบขนาดโครงสร้างข้อมูลใน Rust อีก 25% บทความนี้อธิบายคณิตศาสตร์เบื้องหลัง วิธีบีบข้อมูลโดยไม่ใช้ unsafe และวิธีปล่อยการเปลี่ยนแปลงที่เสี่ยงโดยไม่ทำให้แคชทั้งโลกหาย
อ่านบทความ















