Cloudflare, 1.1.1.1 DNS önbelleğini optimize ederek 100 TB bellek tasarrufu sağladı
Cloudflare, Big Pineapple platformunun DNS cache yapısında beş Rust seviyesinde optimizasyon uygulayarak giriş başına bellek kullanımını %56 azalttı ve filo genelinde yaklaşık 100 TB bellek serbest bıraktı. Optimizasyonlar cache performansını da artırdı.
Cloudflare, 1.1.1.1 DNS resolver’ının arkasındaki Big Pineapple platformunun önbellek yapısını optimize ederek filo genelinde yaklaşık 100 TB bellek tasarrufu elde etti. Beş ayrı Rust seviyesinde değişiklik ile cache girişi başına bellek ayak izi %56 azaltıldı. Bu iyileştirmeler aynı zamanda insert throughput’ını %43 artırırken lookup latency’sini %19 düşürdü.
1.1.1.1 önbelleğinde sağlanan 100 TB bellek tasarrufu

Big Pineapple herhangi bir anda 250 milyardan fazla DNS cache girişi barındırıyor. Her bayt israfı, filo genelinde 250 GB’tan fazla bellek kaybına yol açıyor. Yapılan değişiklikler şu şekilde:
- Vec ve String alanlarının Box<[T]> ve Box<str> ile değiştirilmesi, kapasite alanı ve fazladan heap ayrımı ortadan kaldırarak giriş başına 64 bayt tasarruf sağladı.
- Answer, authority ve additional bölümlerinin ayrı listeler yerine tek bir liste içinde offset (u16) ile işaretlenmesi, iki liste pointer’ını kaldırarak 28 bayt kazanç getirdi.
- Çoğu kayıtta owner domain sorgu ile aynı olduğundan, Record yapısında owner: Option<Name> kullanılarak gereksiz heap allocation’lar önlendi.
- RecordData enum’unda büyük varyantlar (TXT, NAPTR, SVCB vb.) Box ile heap’e taşınarak, A ve AAAA kayıtlarının 120 baytlık padding israfı ortadan kalktı.
- Kayıtların wire formatta tek bir Box<[u8]> içinde length-prefixed olarak saklanması, birden fazla heap allocation’ı tek bir contiguous buffer’a indirgedi ve CPU cache locality’sini artırdı.
Bu değişiklikler 18 Mayıs 2026’da rollout’a başlandı ve 6 Temmuz 2026’da tüm servislerde tamamlandı. Üretimde p99 bellek kullanımı 9.3 GB’dan 5.3 GB’ye, p90 kullanım ise 6.5 GB’dan 3.8 GB’ye düştü.
DNS önbellek optimizasyonunda kullanılan yöntem
Benchmark sonuçlarına göre per-entry bellek kullanımı 953 bayttan 420 bayta, allocation miktarı ise 1.1 KB’dan 461 bayta geriledi. Insert throughput 625.000 giriş/saniyeden 893.000 giriş/saniyeye yükseldi. Lookup latency 828 ns’ten 670 ns’ye indi.
Tasarruf edilen bellek, cache kapasitesinin artırılması için yeniden kullanılacak. Bu sayede hit oranı yükselecek ve upstream sorgu hacmi azalacak. EDNS Client Subnet (ECS) kullanılan lokasyonlarda optimizasyonların etkisi daha belirgin oldu çünkü aynı sorgu için birden fazla cache girişi tutuluyor.
Cloudflare, bu tür büyük ölçekli sistem optimizasyonlarının diğer ekipler için de faydalı olabileceğini belirterek geliştirici topluluğuna deneyim paylaşımı çağrısı yaptı.
Kaynak: Cloudflare Blog — 27.08.2026 20:02