Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ESI/Statification of CSS/JS increases response time, even when cached #935

Closed
davidnuescheler opened this issue May 28, 2019 · 4 comments
Closed
Assignees
Labels
bug Something isn't working

Comments

@davidnuescheler
Copy link
Contributor

Looking at the status page it looks like the response times more than doubled recently for the project helix homepage

839A525B-9FC6-4E14-B355-4F391F9D2F0C

@tripodsan
Copy link
Contributor

I quickly looked at the response, and it seems to be cached.

but if you look a the way curl serves the response, you can see it stalls before:

    <link rel="stylesheet" href='/styles.css.hlx_0e4e69a3e5c168013ab2bafe5a66463a79d0d4f4'>

which is the new static-cache-key-resolver. I checked runtime, it's not invoking the backend, so this seems to be cached as well, but still adds a bit of overhead to the request processing.

while the ESI's are cool, I don't think they help the overall performance. my gut feeling is, that every esi adds about 100ms to the response time. so imaging a page with many static includes, it would be very slow....

try:

time curl -v https://adobedevsite.helix-demo.xyz/xd/docs/

2019-05-29_08-55-19

@trieloff trieloff transferred this issue from another repository May 29, 2019
@trieloff trieloff changed the title StatusPage reports performance degradation ESI/Statification of CSS/JS increases response time, even when cached May 29, 2019
@trieloff trieloff added the bug Something isn't working label May 29, 2019
@trieloff
Copy link
Contributor

trieloff commented Jun 7, 2019

I don't think this is what's happening. The average response time definitely has gone up, but requesting either of the URLs mentioned in this thread repeatedly is fast.

As Pingdom is rotating between locations (and thus Fastly edge nodes), we might be seeing that the ESI is being processed in the wrong location: edge, cluster, shield? (I don't know)

@kptdobe
Copy link
Contributor

kptdobe commented Jun 9, 2019

A little bit of analysis shows:

  • the perf started to degrade on May 27
  • this is the day of a hlx deploy / hlx publish
  • previous hlx deploy / hlx publish was Apr 3/4.
  • the project code has not really changed for 6 months - only change that happened that exact day is adobe/project-helix.io@8c72b83#diff-463cb3ad76ac5060b566c29e806a5c29 which does not introduce any new feature or something, just some different DOM

Quick and obvious conclusion: something in hlx code has changed and slows down the same project code. Considering the number of features we introduced, only performance tracing could revealing where it is slower than before.

I hlx deploy publish today (June 9) using hlx v4.2.2, we can see if performances change.

@tripodsan
Copy link
Contributor

won't fix for helix 2. irrelevant for helix 3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants