HeadlinesBriefing HeadlinesBriefing.com

Optimización de caché DNS de Cloudflare: 100 TB

Hacker News •
×

La caché DNS de Cloudflare almacena más de 25 mil millones de entradas, y cada byte desperdiciado cuesta 250 GB en toda la red. Mediante cinco cambios sucesivos en cómo se almacenan las entradas en memoria, redujeron la huella por entrada en más del 50%, liberando aproximadamente 100 terabytes de RAM, equivalentes a 130 servidores Gen 13. Las optimizaciones también mejoraron el rendimiento: el rendimiento de inserción aumentó un 43% y la latencia de búsqueda disminuyó un 19%, demostrando que reducir el uso de memoria puede acelerar las operaciones.

Los cambios clave implicaron reemplazar los tipos Vec y String por Box<[T]> y Box<str>, eliminando campos de capacidad innecesarios y sobreasignación de heap. Cada entrada de caché usaba originalmente 8 campos Vec/String, cada uno con 24 bytes de sobrecarga; al cambiar a slices, se ahorraron 64 bytes por entrada. Esto se midió mediante benchmarks con asignadores personalizados y se validó en producción, donde los ahorros de memoria fueron significativos sin sacrificar velocidad.

El artículo detalla el proceso técnico, desde el benchmarking con tráfico representativo (56% registros A, 25% AAAA, 19% TXT) hasta el despliegue gradual en los centros de datos. Enfatiza que pequeños ahorros por entrada se acumulan masivamente a escala, y que un perfilado cuidadoso puede conducir a ganancias tanto de memoria como de rendimiento.

Entidades clave: Empresas: Cloudflare

Preguntas frecuentes: ¿Cómo redujo Cloudflare el uso de memoria de la caché DNS en 100 TB?

Cloudflare reemplazó los campos Vec y String en las entradas de caché con Box<[T]> y Box<str>, eliminando la sobrecarga de capacidad y el desperdicio de heap, ahorrando 64 bytes por entrada, lo que suma ~100 TB en 25 mil millones de entradas.

Fuente: Hacker News · Resumido por HeadlinesBriefing