Компания Cloudflare высвободила около 100 ТБ оперативной памяти в своей глобальной инфраструктуре. Инженеры оптимизировали алгоритм распределения кешированных данных в открытом фреймворке Pingora, пересмотрев работу согласованного хеширования, используемого для выбора кеш-серверов.
Ранее на каждый сервер приходилось около 100 000 виртуальных точек хеширования. Статистический анализ показал, что после 10 000 точек прирост точности балансировки становится минимальным. В результате компания сократила количество этих точек примерно в десять раз.
Дополнительная экономия была достигнута за счет оптимизации структур данных на языке Rust, где размер каждой записи в таблице маршрутизации уменьшили на два байта. При миллиардах записей это позволило высвободить значительный объем ресурсов оперативной памяти.
Новую версию алгоритма внедрили параллельно с прежней для возможности быстрого отката при возникновении ошибок. Ранее Cloudflare уже удавалось сэкономить около 100 ТБ ОЗУ путем оптимизации структуры записей DNS-кеша в сервисе 1.1.1.1.




