Rustle: Rust'ta yazılan hızlı forward proxy
Rustle, açık kaynaklı bir forward proxy sunucusu ve Rust'ta yazılmış. Geliştirici Rust deneyimi olmayan biri tarafından birkaç günde tamamlanmış, Claude yapay zekâsı yardımıyla. MIT lisansı altında paylaşılan proje, performans açısından etkileyici sonuçlar gösteriyor.
Proje mimarisi düşünülü. Her CPU çekirdeğine bir worker atanıyor ve her worker kendi Tokio event loop'u ile çalışıyor. Yeni gelen bağlantılar kernel tarafından işletim sistemi seviyesinde dağıtılıyor, böylece bağlantı hiçbir zaman çekirdeği değiştirmiyor. Bu, cache verimliliğini artırıyor.
Bellek kullanımı minimal tutulmuş. Keep-alive bağlantılarda istekler yerinde okunuyor ve tamponlar yeniden kullanılıyor, yani her istek için yeni bellek ayrılmıyor. Büyük veri akışlarında ise kernel byte'ları doğrudan taşıyor, program tarafından kopyalanmıyor.
Benchmark testlerinde rustle, 3proxy, Squid, gost ve Tinyproxy ile karşılaştırıldı. 25 Gbit/s ağ hızında bare-metal sunucularda çalışan testlerde, her proxy için kendi belgesinin önerdiği ayarlamalar uygulandı. Rustle 41 testin 41'inde birinci oldu. 1 KB HTTP yanıtlarında saniyede 55 bin istek işleyebiliyor. Bellek tüketimi ise 95 MB'ı geçmiyor.
Proje HTTP, HTTPS ve SOCKS5 protokollerini destekliyor. Geliştirici, özellikle Rust topluluğundan geri bildirim almak istiyor ve kodun iyileştirilebilir yönleri hakkında açık görüşlere açık.
0 yorum