Contact emails
Design doc/Spec
Summary
Intervention: Loading tasks in blink scheduler and fetching of resources will be stopped (100% throttled) when a renderer has been in the background after grace time of 5 minutes, on Android (only).
Motivation
Many sites continue loading activity, even after their app has been in background for over 5 minutes.. This consumes non-trivial amount of CPU and network bandwidth, and hurts the responsiveness of the foreground app, especially on mobile.
Our data (UMA) shows that loading task queue is the largest contributor (amongst attributed tasks) to work in background, and this work continues even after 5 minutes.
Earlier this year, we stopped timers in background, on Android. Ultimately, we want to stop almost all background work, after a grace time, on mobile and desktop, under the Lifecycle umbrella project. Stopping loading on Android, is an incremental step on the path towards stopping background work.
Risks
Compatibility
Compat risk: medium
This intervention is not expected to impact end users much. An opt-out (limited time) will be provided for apps that encounter problems. The opt-out will be extended as needed, for legitimate use-cases.
We will run a Finch experiment to find any unexpected sources of breakage, and analyze metrics.
Loading work in background tabs, is generally not visible to mobile users. Background loading is less common on mobile. Furthermore we wait for a generous 5 mins, before intervening here.
Resource fetches and scheduler tasks are queued up, and will be resumed if the user brings the site to foreground, so there is no breakage of content.
Interoperability
For long term interop on stopping (and discarding) in background, we are working with other browser vendors on Lifecycle (see Intent to Implement thread).
Intervention Guidelines
Predictability
The mechanism is well defined and predictable, same as stopping timers in background. (The behavior will be eventually spec’d as part of Lifecycle)
Avoidability
Continuing to be loading in background after 5 minutes is not a good practice, especially on mobile (for data and battery).
Transparency
We are working on a JS callback to notify the app when the page transitions to STOPPED state in background. We are looking into firing a console message or notification via Reporting API.
Data-driven
See current thoughts on success and regression metrics here.
Debuggability
A console message will be emitted when the intervention is triggered. As well as a JS callback.
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
This intervention will be implemented on Android only, for now.
(Eventually background work will also be stopped on desktop)
Link to entry on the feature dashboard
https://www.chromestatus.com/feature/6238781036298240
Requesting approval to ship?
No.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK7ODi8y-4FTtTZTpznOeZXJd2AzsEEDS96qExDgWej7xKpzdQ%40mail.gmail.com.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK7ODi8y-4FTtTZTpznOeZXJd2AzsEEDS96qExDgWej7xKpzdQ%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACj%3DBEiKELe0cXCF8w2aysa3TYqsaFxTv84iE2Ggurs4ROfVXQ%40mail.gmail.com.To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
Will this affect people running (for instance) spotify in a background tab?
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK7ODi8y-4FTtTZTpznOeZXJd2AzsEEDS96qExDgWej7xKpzdQ%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACj%3DBEiKELe0cXCF8w2aysa3TYqsaFxTv84iE2Ggurs4ROfVXQ%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK7ODi_TdgDEuO-bfA-rXERR5mx0b61hWK6vV%3DLPargigMZRkQ%40mail.gmail.com.
I think it's those exceptions (audio/webrtc) that need to be clear to web developers. Right now I don't know if they are documented in anything but mail threads and C++ source code and random design documents.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK7ODi8y-4FTtTZTpznOeZXJd2AzsEEDS96qExDgWej7xKpzdQ%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACj%3DBEiKELe0cXCF8w2aysa3TYqsaFxTv84iE2Ggurs4ROfVXQ%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK7ODi_TdgDEuO-bfA-rXERR5mx0b61hWK6vV%3DLPargigMZRkQ%40mail.gmail.com.
--/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/op.zh2xruwtrbppqq%40cicero2.linkoping.osa.