Geliştiriciler, iş akışlarını bozmadan hızlı bir şekilde sorunları çözebilmeleri için GitHub Issues, yük zamanını azaltmak ve anında yükleme sağlamak için modernizasyon geçiriyor. Bu amaçla, istemci tarafında önbellekleme katmanı oluşturuldu ve hizmet işçisi kullanılarak önbelleğe alınan verilerin hard navigasyonlarda da kullanılabilmesi sağlandı.
Anında Yükleme: GitHub Issues'ın Geleceği
GitHub Issues, milyonlarca geliştiricinin kod tabanlarını çalışır durumda tutmak için her hafta kullanıyor. Issues, aynı zamanda AI destekli çalışmanın planlama katmanı haline geldiğinden, algılanan performans daha da kritik hale geldi. Eğer niyet ve geri bildirim arasındaki döngü yavaşsa, tüm sistem yavaş görünüyor.
Başlangıç Noktası: Navigation Mix
Optimizasyonları uygulamadan önce, kullanıcıların gerçekten issues#show (bir sorunu görüntüleme yoluna) nasıl ulaştığını açık bir model olarak belirlemek gerekiyordu. Tüm navigasyonları tek bir trafik sınıfı olarak ele almak, gerçek tıkanıklıkları gizlerdi.
Üç temel navigasyon türü belirlendi:
- Sert navigasyon: Tam bir tarayıcı yüklemesi (soğuk başlatma veya yenileme) где network, sunucu işleme, varlık yüklemesi, JavaScript başlatma ve React hidrasyonu maliyetini ödüyorsunuz.
- Turbo navigasyon: Rails Turbo geçişi, hedeflenen sayfa bölgelerini tam bir yenileme olmadan güncelliyor. Sert navigasyon overheadinden bazılarını kaçınmasına rağmen, sunucu tarafından işlenen cevaplarla hala güçlü bir şekilde bağımlı.
- Yumuşak navigasyon (React): Mevcut React çalışma zamanı içinde istemci tarafı geçişi, waar genellikle tam sayfa başlangıç maliyetinden kaçınabilirsiniz.
Çalışma akışının başlangıcındaki ölçülen dağılım şuydu:
Bu dağılım, baskın yolun aynı zamanda en yavaş yol olduğunu gösterdi. Sadece React yumuşak navigasyonlarına odaklanan herhangi bir strateji, gerçek tıkanıklıkları iyileştiremezdi.
Sonuç
GitHub Issues, anında yükleme için modernizasyon geçirerek geliştiricilerin iş akışlarını bozmadan hızlı bir şekilde sorunları çözebilmesini sağlıyor. Bu, geliştiriciler için daha hızlı ve daha verimli bir çalışma ortamı anlamına geliyor.
Yapay zeka özeti
GitHub Issues, yük zamanını azaltmak ve anında yükleme sağlamak için modernizasyon geçiriyor. Geliştiriciler, iş akışlarını bozmadan hızlı bir şekilde sorunları çözebiliyorlar.