CrumpledDog / Umbraco-AzureCDNToolkit

Makes it easy to fully utilise the Azure CDN with a Umbraco website
13 stars 14 forks source link

Performance Issues #27

Open c9mb opened 4 years ago

c9mb commented 4 years ago

The AzureBlobCache provider is basically working, but the performance is not what I was hoping for.

When the AzureCDNToolKit is disabled, client requests for /media/... urls are responded to with a 302 redirect to the AzureBlobStorage/Cache or AzureBlobStorage/Media locations, depending on the request and file type.

However, each 302 response is slow - about a second - which is a problem that I was trying to deal with by implementing the AzureCDNToolKit.

When the AzureCDNToolKit is enabled, page requests are literally taking minutes to respond with the rendered html, at which point the embedded urls for the media resources are largely as expected - AzureBlobStorage/Cache or AzureBlobStorage/Media - and accessing content from the Blob.Storage is then lightning fast... but waiting a 2-3 minutes for a page response is quite obviously not a workable situation.

If I do a quick refresh on a page that just took minutes to load, then I can basically get the sort of response time I'd expect to see, but if left for a short while, then the next request is back to minutes before the html response is received - which makes me suspect a cache issue?

In addition, the AzureCDNToolKit plugin doesn't display any content or any server to select, but I don't know if that is related or a separate issue - #26

FWIW - this config is on a V7 Umbraco-Cloud installation (I've got a number of these I need to deploy) and I'm currently just using the native domain of uaas-host.s1.umbraco.io in the 'domain' key of the AzureCDNToolKit config, although that will obviously change as the sites go live. I don't know how Umbraco-Cloud registers servers.

I'm assuming that I've done something wrong, and just can't see what it is, but it would seem that the website is not able to access cached AzureStorage urls for fast response.

I've attached a text file of the various .config files and sections changes resulting from the PM packages installed and then configured, in case a problem can be spotted that I've missed. AzureCDNConfigs.txt