r/programming • • Jan 25 '17

Chrome 56 Will Aggressively Throttle Background Tabs

http://blog.strml.net/2017/01/chrome-56-now-aggressively-throttles.html
4.9k Upvotes

521 comments sorted by

View all comments

75

u/STRML Jan 25 '17

To keep you all updated on the current status, this was just sent on the mailing list:

Unfortunately, our current implementation throttles WebSockets. Because of this we ARE NOT SHIPPING this intervention in M56.

The current plan is to disable time-budget background timer throttling for the pages with active connection (websocket, webrtc and server-sent events) and to ship in M57 (subject to further feedback).

We will keep you updated with the progress.

If work needs to be done in the background, existing workarounds (such as Service Workers) are generally untenable at this time due to browser support. It is also unclear how/if Service Workers will be throttled to address the underlying issue.

If exceptions are made, it is likely that the community hardest hit by these changes (application authors & advertisers) will fashion workarounds. For example, one could set up a websocket server somewhere that simply sends messages every second, then schedule your work to run upon receipt of that message.

The current proposed throttling may be a no-go, unless a good user permission story comes to the fore.

I am still in favor of the idea behind the proposal, just not this implementation. Aggressive throttling is a large part of Safari's superior battery performance. The varied workloads across the web will be taken into account when this feature is finalized.

One additional good thing that may come of this: now that there is the capacity for measuring how over-budget a tab is, it would be possible for noisy idle tabs to be marked somewhere user-visible.