Yapay zeka ile kod yazımında mimari kararlar geliştiricilere kalıyor
Öne çıkanlar
- DHH tarafından yapay zekaya yazdırılan Rust sürümü, önbellek kolaylığı için CSRF korumasını ve Redis bağımlılığını kaldırdı.
- Rust kodundaki bloklayıcı veri tabanı işlemleri asenkron çalışma zamanında diğer görevlerin beklemesine yol açtı.
- Elixir sürümü yoğun yük altında 1,8 GB bellek tüketti ve HTTP isteklerinde yüzde 23 zaman aşımı yaşadı.
Ruby on Rails kurucusu DHH, Campfire Once uygulamasını yapay zeka araçları kullanarak Rust, Elixir ve Go dillerine yeniden yazdırdı. Üretilen kodların analizi, sistem komutları yeterince ayrıntılı olmadığında yapay zeka modellerinin geriye dönük uyumluluk ve önbellek mekanizmaları gibi kritik mimari tercihlerde rastgele kararlar verdiğini gösterdi. Rust sürümünde CSRF doğrulaması kaldırıldı, Redis yerine süreç içi kuyruklar tercih edildi ve Elixir sürümüne göre farklı tavizler verildi.
Yapay zekanın ürettiği Rust kodunda bloklayıcı veri tabanı sorguları ve kilitler doğrudan asenkron görevler içinde çalıştırıldı. Bu durum Tokio gibi işbirlikçi çalışma zamanlarında çalışan iş parçacıklarının kilitlenmesine yol açtı. Elixir sürümünde ise tüm SQL sorgularının eşzamanlı çalıştırılabilecekken tek bir süreçte sıralı yürütülmesi gibi performans sorunları tespit edildi. İki dilde yapılan yeniden yazımların dile özgü optimizasyonları ve asenkron programlama kurallarını doğrudan sağlayamadığı belirlendi.
Yapılan yük testlerinde Rust sürümünün Tokio yayın kanalı kapasitesinin 256 ile sınırlandırılması nedeniyle yüksek trafikte bildirimlerin yüzde 1'ini teslim edebildiği görüldü. Sınırın artırılması teslim oranını yüzde 90'a çıkarsa da gecikmeyi 11 saniyeden 130 saniyenin üzerine fırlattı. Sınırsız posta kutusu kullanan Elixir tarafında ise gecikmeler 180 saniyeye ulaştı, HTTP isteklerinin yüzde 23'ü zaman aşımına uğradı ve bellek tüketimi 1,8 GB seviyesine çıktı.
Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.