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

CPU spikes when loading large file #112

Open
mwanchap opened this issue Sep 4, 2018 · 4 comments
Open

CPU spikes when loading large file #112

mwanchap opened this issue Sep 4, 2018 · 4 comments

Comments

@mwanchap
Copy link

mwanchap commented Sep 4, 2018

Firstly, thanks for all your hard work on this project - it's been a huge help for us!

We manage a bunch of Umbraco-based sites and we recently had a situation where a large-but-not-ridiculous number of requests for a large-ish PDF (~10mb) was causing the Azure app service plan hosting the sites to have serious CPU usage spikes, > 90% for a period of several hours as long as the requests continued. These were all direct file requests to a /media/... url, so I don't think much other Umbraco-related work was happening aside from retrieving the file. This seems to only occur on large files as load testing on the site hasn't shown the same behaviour when requesting a large number of smaller files (e.g. images on a page). I was wondering what your thoughts were on the potential cause and any ideas on mitigations (aside from just putting the file elsewhere or using a CDN).

@JimBobSquarePants
Copy link
Contributor

Hi @mwanchap

We're not doing anything intensive at all with our codebase. We merely call the underlying Azure API's to retrieve the content over the wire.

@SteveVaneeckhout
Copy link

I had the same problem last year. Large number of requests to PDF files from the same IP addresses for hours and sometimes days. Based on my research it's an older version of Adobe Reader that is to blame. Adobe reader doesn't understand the response from IIS and keeps rerequesting the same file until the user closes the tab/browser.

If you still have the issue, you could call the MediaFilesystemProvider and return the URL to the blob storage. That way the requests bypass your webserver completely.

@mwanchap
Copy link
Author

mwanchap commented Mar 25, 2019 via email

@SteveVaneeckhout
Copy link

SteveVaneeckhout commented Mar 25, 2019

I think I found it by Googling IIS PDF. In the end I found the following links:

I still find it weird that this was only supposed to be an issue on IIS 7.5 while I expect Azure App Services to run a newer version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants