Технологии

Cloudflare высвободила 100 ТБ оперативной памяти через оптимизацию кода

Cloudflare высвободила 100 ТБ оперативной памяти через оптимизацию кода

Для эффективной работы кеша компания использует алгоритм Ketama, распределяющий запросы по хеш-кольцу с помощью виртуальных точек на каждом сервере. Со временем их количество выросло до 100 000 на узел, что привело к раздуванию таблиц маршрутизации. Статистический анализ показал, что после отметки в 10 000 точек дальнейшее повышение точности балансировки становится пренебрежимо малым.

Команда разработчиков сократила число виртуальных точек в десять раз и дополнительно оптимизировала структуры данных на языке Rust, уменьшив размер каждой записи на два байта. При миллиардах записей в масштабах глобальной сети эти изменения позволили сэкономить 100 ТБ ОЗУ. Чтобы минимизировать риски, новую версию алгоритма внедрили параллельно с существующей, сохранив возможность мгновенного отката. Ранее аналогичный объем памяти компания высвобождала за счет оптимизации структуры DNS-кеша в сервисе 1.1.1.1.

Поделиться

Комментарии (0)

Оставить комментарий

Пока нет комментариев. Будьте первым!