Yayınlanma tarihi: 20 Ocak 2025
Chrome 133'ten (Şubat 2025) itibaren, Enerji Tasarrufu modu etkinken uygun ve yoğun CPU kullanan arka plan sekmeleri dondurulacak. Bu, Enerji Tasarrufu'nu kullanan ve pil ömrünün her yüzdelik noktası önemli olan kullanıcılar için pil tüketimini azaltmayı amaçlar. Etkiyi en aza indirmek için yalnızca belirli ölçütleri karşılayan ve yüksek CPU kullanımı gösteren arka plan sekmeleri dondurulur.
Donma nedir?
Dondurma işlemi, web sayfasındaki görev yürütme işlemini askıya alır. Bunlardan bazıları:
- Etkinlik işleyiciler (ör. giriş, ağ ve sensör)
- Zamanlayıcılar
- Promise çözücüler
Dondurma işlemi, sekmenin bellekten kaldırıldığı atma işleminden farklıdır. Dondurulmuş bir sekme tekrar odaklandığında otomatik olarak dondurulması kaldırılır ve sıraya alınmış tüm görevler durum kaybı olmadan yürütülür.
Dondurma ve devam ettirme etkinlikleri, bir sayfa dondurulduğunda veya devam ettirildiğinde gönderilir (Sayfa Yaşam Döngüsü API dokümanlarına bakın). Bu etkinlikler, sayfanın kullanılmayan kaynakları serbest bırakmasına, bir sunucuyu sayfanın duraklatıldığını bildirmesine veya metrikleri kaydetmesine olanak tanır.
Hangi sayfalar dondurulabilir?
Dondurma işlemi, tarama bağlam gruplarında çalışır.
Genellikle tarama bağlamı grubu tek bir sekmeden oluşur. Ancak window.open()
gibi API'ler kullanıldığında birden fazla sekme aynı gruba ait olabilir.
Enerji Tasarrufu etkinken, aşağıdaki koşulları karşılayan bir tarama bağlamı grubu dondurulur:
- Gruptaki tüm sayfalar beş dakikadan uzun süredir gizli ve sessiz.
- Gruptaki aynı kaynaklı çerçevelerin alt grupları "CPU yoğun"dur.
- Grup şunları yapmaz:
- Ses veya görüntülü konferans işlevi sunma (mikrofon, kamera, ekran/pencere/sekme yakalama veya "açık" RTCDataChannel ya da "canlı" MediaStreamTrack içeren bir RTCPeerConnection kullanılarak algılanır).
- Harici bir cihazı kontrol edin (Web USB, Web Bluetooth, Web HID veya Web Seri kullanılarak algılanır).
- Grup dışındaki işlemleri engelleyen bir Web Kilidi veya IndexedDB bağlantısı tutun.
"CPU yoğun" tanımı değişebilir ancak amaç, verimli bir şekilde uygulanmış e-posta veya sohbet istemcileri ya da bildirim oluşturan takvim uygulamalarını hariç tutmaktır.
Aynı tarama bağlamı grubundaki tüm sekmelerin aynı anda dondurulması, pop-up kullanan uygulamalarda (ör. ileti oluşturma veya kimlik bilgileri girme) kesintiyi en aza indirir.
Sitemi nasıl hazırlayabilirim?
Sitenizde arka plan işlevi (ör. bildirimler, dosya yüklemeleri veya içerik yenileme) yoksa siteniz donma sorunundan etkilenmeyebilir.
Sitenizde arka plan işlevi varsa CPU yoğun olarak değerlendirilip dondurulmasını önlemek için arka planda CPU kullanımını en aza indirin. Aşağıda bazı ipuçları verilmiştir:
- Düzenli durum değişikliği kontrolleri için zamanlayıcılardan kaçının.
- Bir öğenin görüntü alanına ne zaman girdiğini algılamak için IntersectionObserver'ı kullanın.
- Öğe boyutundaki değişiklikleri algılamak için ResizeObserver'ı kullanın.
- DOM değişiklikleri için MutationObserver veya özel öğe yaşam döngüsü geri çağırma işlevlerini kullanın.
- Anket sunucusu yerine web soketlerini, sunucu tarafından gönderilen etkinlikleri, push mesajlarını veya aktarılan akışları kullanabilirsiniz.
- Ses veya video değişiklikleri için timeupdate ve ended gibi etkinlikleri kullanın.
Ayrıca, donma sorunundan etkilenmemesi için arka plan işlevini bir hizmet çalışanına taşımanızı öneririz. Hizmet çalışanları, donma sorunundan etkilenmemesinin yanı sıra daha az tarayıcı kaynağı gerektirir. Şunları kullanabilirsiniz:
- Bildirimler için Push API
- Güncellemeleri almak için Arka Plan Senkronizasyonu API'si veya Web Periyodik Arka Plan Senkronizasyonu API'si.
Siteler, BackgroundPageFreezeOptOut kaynak denemesine katılarak dondurmayı devre dışı bırakabilir. Önemli arka plan çalışmalarını bildirmek için yeni API'ler (ör. İlerleme Bildirimi API'si) yayınlandıktan sonra bu deneme sonlandırılacaktır.
Bir sekmenin dondurulmaya uygun olup olmadığını chrome://discards
adresinden kontrol edebilirsiniz. Bir sekme dondurulmaya uygun olsa bile Chrome 133'ün bunu yalnızca CPU'ya yoğun bir şekilde ihtiyaç duyuyorsa ve Enerji Tasarrufu etkinse donduracağını unutmayın.
Sırada ne var?
Arka planda sekme dondurma, enerji tasarrufu özelliğini etkinleştirmiş kullanıcılar için önemli olan enerji tasarrufu sağlar.
Ayrıca, CPU kullanımını ve bellek erişimini azaltarak ön plan sekme performansını iyileştirir ve özellikle kaynak kısıtlaması olan cihazlarda arka plan sekmelerinin sonlandırılmasını önler. Bu nedenle Chrome, sekme dondurma özelliğini daha fazla duruma ekleyecek (değişiklikler blink-dev@chromium.org adresinde duyurulacaktır). Bu işlemi arka plan kullanım alanlarında en az kesinti olacak şekilde yapmak için ProgressNotification API gibi yeni API'ler, sayfaların önemli arka plan çalışmalarını bildirmesine ve donmayı önlemesine olanak tanır.