Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe "The phases illustrated above are not necessarily consecutive, and user agents may spend time between them on processing, waiting for TCP connections to become available, waiting before sending requests to prevent contention or any other implementation detail. The unaccounted time spent by the user agent can be calculated as the difference between the consecutive timestamps. Its sum can be calculated as the difference between the
duration
value andresponseEnd - startTime
. "@nicjansma @igrigorik - thoughts?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, tbh I find this really cryptic and hard to grok. As in, you have to be well versed in the nuance here to understand what this is saying. If our concern is specifically "stalled" / "blocked", I'd focus and lead with that.
"The user agent may inject other processing steps that are not included in the above diagram. For example, due to limitations of HTTP/1.x TCP connection limits, the user agent may be blocked waiting for an available socket, and such delays are not explicitly exposed by this specification."
~ish?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As per the fact that many developers collect performance metrics based on this diagram, personally I prefer @yoavweiss 's version since it presents a clear formula for calculating "stalled" time