Publicado em 23 de setembro de 2026· 3 min de leitura

    Cloudflare reduz 100 TB de memória no cache DNS 1.1.1.1 com novo layout em Rust

    Capa do post sobre otimização de memória no cache DNS do Cloudflare 1.1.1.1, com o título em branco sobre fundo navy e uma malha de nós conectados em tons de dourado

    Cloudflare redesenhou a representação em memória do cache DNS usado pelo resolver 1.1.1.1. A mudança reduziu o footprint por entrada em 56% e liberou cerca de 100 TB de memória de working-set em toda a frota, segundo a reportagem da InfoQ. A plataforma Big Pineapple, que mantém mais de 250 bilhões de entradas de cache DNS a qualquer momento, também ganhou 43% de throughput de inserção e 19% de redução na latência de lookup.

    Cinco mudanças no layout em Rust

    O trabalho envolveu cinco ajustes sucessivos na representação do cache em Rust. Primeiro, a Cloudflare trocou Vec e String por Box<[T]> e Box<str> para dados que não mudam após a inserção, economizando 64 bytes por entrada e mais de 15 TB em toda a frota. Depois, combinou registros answer, authority e additional em uma única lista com offsets compactos, transformou Booleans em bitflags e deixou de armazenar owner names idênticos ao domínio consultado, reconstruindo-os a partir da chave do cache.

    O maior desafio foi o uso de enums do Rust. A solução inicial de encaixotar as variantes maiores em Box reduziu o tamanho, mas as alocações separadas adicionaram sobrecarga e pioraram a localidade de memória.

    Por que o DNS wire format resolveu o problema

    O design final armazena os dados de registros em um buffer contíguo de bytes no formato DNS wire. Isso elimina o overhead do enum e das alocações por registro, além de melhorar a localidade. Tipos de registro usados com frequência podem ser copiados diretamente para as respostas; registros com domain names ainda exigem parsing por causa da compressão de nomes do DNS.

    A mudança reduziu o footprint por entrada de 953 para 420 bytes e as alocações de 1,1 KB para 461 bytes nos benchmarks. O resultado é a combinação de menos memória total com inserções 43% mais rápidas e lookups 19% mais rápidos.

    Números de produção e rollout

    A otimização foi implementada na produção entre 18 de maio e 6 de julho de 2026. No p99, a memória residente por instância caiu de 9,3 GB para 5,3 GB; no p90, de 6,5 GB para 3,8 GB. Com isso, a Cloudflare planeja usar os cerca de 100 TB liberados para aumentar a capacidade de cache sem elevar o consumo global de memória.

    Sebastiaan Neuteboom, engenheiro de sistemas da Cloudflare, resumiu o resultado: não é todo dia que se economizam 100 terabytes de memória.

    Ressalvas e quando não compensa

    Esse tipo de otimização não é universal. Um comentarista no Reddit resumiu o tradeoff: a maioria desses truques de memória só compensa no volume de requisições da Cloudflare; em escala menor, a indireção extra do boxing de variantes pode prejudicar a localidade de cache mais do que ajuda.

    A abordagem também difere de outros resolvedores recursivos. O Unbound mantém caches separados de mensagem, RRset, chave e negativos com tamanhos e slabs configuráveis, enquanto o PowerDNS Recursor usa múltiplos tipos de cache, incluindo packet e record caches. O trabalho da Cloudflare foca em reduzir a sobrecarga de representação e alocação dentro de cada entrada individual, conforme a nota da InfoQ.

    Para equipes rodando servidores DNS autoritativos ou resolvers menores, os números da Cloudflare servem como referência de arquitetura, não como receita direta. A economia de 100 TB depende de uma frota com mais de 250 bilhões de entradas em cache. Em cargas com poucos milhões de registros, representações mais simples e alocações separadas costumam ser suficientes e mais fáceis de manter.

    Quando o cache é o gargalo e o volume de consultas justifica o esforço, o caminho do DNS wire format com buffer contíguo é uma alternativa concreta para reduzir memória e melhorar localidade sem mudar a semântica do resolver. Quando não é, a complexidade adicional pode não pagar o investimento.

    Compartilhar:

    Leia também

    Fontes

    Maxwell Diniz
    Maxwell Diniz

    Fundador da DEVDINIZ

    Software em produção

    51 ferramentas gratuitas, direto no navegador

    Utilitários para CPF, CNPJ, JWT, JSON, regex, cores e mais. Processamento local, sem cadastro e sem conta — a mesma engenharia que sustenta o que escrevemos aqui.