New issue
Advanced search Search tips

Issue 817896 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , iOS , Chrome , Mac , Fuchsia
Pri: 3
Type: Bug



Sign in to add a comment

Add web workers / service workers / etc to GRC graph

Project Member Reported by chrisha@chromium.org, Mar 1 2018

Issue description

Suspension and throttling decisions will depend on whether or not a page has an attached web workers / service worker / etc. We need to add corresponding node types to the GRC graph.

Notes from email conversation:

- A service worker lives in a single renderer process. It can talk to multiple frames in either local or remote processes. It can even live without any frames (e.g., it wake up if a push message arrives). It's terminated when it's been idle for a while (i.e., it's had no events for a while).
- A shared worker lives in a single renderer process. It can be attached to multiple frames in either local or remote processes. It's terminated once there are no frames connected to it.
- There can be multiple service workers and multiple shared workers in a single renderer process. 
- In representing either of the S*W in GRC, we'd want to know the origin to which the S*W is bound, as well as the process in which it is hosted.
- We want the URL as well eg. foo.com vs. foo.com/bar 
- Ideally would track the attached frames, but Shubhie mentioned this isn't really necessary.
- We also would like to know the SW state (installing, active, idle), but this isn't necessary initially.
 

Comment 1 by pkl@chromium.org, Mar 5 2018

Status: Assigned (was: Untriaged)
Does this really apply to iOS? We don't control the renderer.

Comment 2 by pkl@chromium.org, Apr 9 2018

Components: Blink>ServiceWorker

Sign in to add a comment