Компания радикально оптимизировала 1.1.1.1
28 августа 2026, 16:56Сети и серверыDexter0
Cloudflare освободила приблизительно 100 ТБ оперативной памяти в своей глобальной серверной сети, не заменив ни одну планку ОЗУ и не изменив физическое оборудование. Инженеры организации просто переработали структуру DNS-кэша платформы Big Pineapple, которая лежит в основе публичного DNS-сервиса 1.1.1.1.

После пяти изменений в коде на Rust размер одной кэшированной DNS-записи удалось уменьшить с 953 до 420 байт — примерно на 56%. На масштабе Cloudflare это обеспечивает значительную экономию: в Big Pineapple одновременно хранится более 250 миллиардов DNS-записей. Поэтому даже один лишний байт на каждую запись оборачивается для инфраструктуры более чем в 250 ГБ оперативной памяти.
Более 15 ТБ удалось высвободить после замены динамических контейнеров Rust Vec и String на структуры фиксированного размера. После того как данные попадают в кэш, увеличивать их емкость больше не понадобилось, в результате чего дополнительная память фактически использовалась впустую.
Инженеры также объединили три списка DNS-записей в единый буфер с двухбайтовыми смещениями, отказавшись от хранения дублирующихся доменных имен. Сами данные теперь хранятся в компактном сетевом формате с указанием длины. Ранее, например, небольшая четырехбайтовая DNS-запись типа A могла занимать в памяти те же 144 байта, что и значительно более крупные записи.
Оптимизация не только освободила память, но и ускорила работу сервиса. Скорость добавления записей в кэш возросла на 43%. Задержка поиска снизилась с 828 до 670 наносекунд.
В результате принятых мер Cloudflare получила около 100 ТБ свободной оперативной памяти — примерно столько же, сколько установлено в 130 серверах поколения Gen 13 с 768 ГБ DDR5-6400 в каждом. В условиях высоких цен на серверную память такая оптимизация особенно актуальна.
При этом Cloudflare не планирует убирать освободившуюся память из серверов. Компания намерена использовать ее для увеличения DNS-кэшей. Это позволит обслуживать больше запросов непосредственно из кэша, реже обращаясь к авторитетным DNS-серверам. Это одновременно снизит сетевую нагрузку и ускорит обработку DNS-запросов.
Источники:Toms HardwareСети и серверы04 минуты назад
Источник