O serviço de DNS 1.1.1.1 da Clouflare foi alvo de optimização que permitiu poupar 100TB de memória RAM em todos os servidores.
O elevado custo da memória RAM está a ter alguns efeitos positivos, como fazer com que as empresas prestem mais atenção à optimização dos serus serviços. No caso da Cloudflare, conseguiu poupar cerca de 100 TB de memória RAM na sua infraestrutura sem alterar qualquer componente físico dos servidores. Isto foi feito atráves da optimização de coisas básicas, que por si só representavam uma poupança de dezenas ou centenas de bytes por registo da cache DNS no serviço 1.1.1.1, mas que se tornam consideráveis quando multiplicadas pelos 250 mil milhões de entradas mantidas em cache.
A empresa redesenhou a estrutura de cada entrada DNS, reduzindo o espaço ocupado de 953 bytes para apenas 420 bytes. Esta mudança não só diminuiu significativamente o consumo de memória como também melhorou o desempenho geral do sistema. Os testes internos indicaram um aumento de 43% na velocidade de inserção de novos registos e uma redução de 19% na latência das consultas.
Grande parte das poupanças foi conseguida com a substituição das estruturas de dados dinâmicas por versões mais compactas, e a eliminação de informações desnecessária armazenadas em cada registo. Os dados também foram reorganizados para poupar memória e melhorar a eficiência das caches dos processadores, permitindo respostas mais rápidas e reduzindo o trabalho necessário para processar cada pedido DNS.
Originalmente a Cloudlflare pretendia equpipar os seus servidores de última geração com 1.5 TB de RAM, mas o elevado custo fez com que a empresa optasse por usar apenas 768 GB como solução mais eficiente. E, como se vê, este caso parece validar a velha suspeita de que, com hardware "à disposição", os programadores podem deixar de se preocupar com as optimizações. Resta esperar que a lição seja recordada quando (se?) voltarmos aos tempos da memória RAM barata.


No comments:
Post a Comment