Hi Marko,
Thank you for your prompt reply, but unfortunately I’m not sure that I’m really much clearer on this strategy.
I am talking about a single, new image being uploaded via the media control panel. It will not be uploaded to the CDN unless the “purge manually” is unchecked. But it’s new image so would not require a cache invalidation.
This means if the CDN is enabled, all the website images are rewritten for serving by the CDN, but will be missing because they haven’t been uploaded. It would then be a manual task to purge each relevant image.
Whilst this may prevent huge invalidation bills, and does neatly re-enforce responsibility for the invalidation bills to the user, I’m sure it is very confusing for those who wouldn’t even consider that this setting was relevant for new images (i.e. me!)
As the CDN should perform its own invalidations based on cache control configuration, wouldn’t it be better to always upload new/changed files but only send invalidations/purge requests based on the “purge manually” setting? That way at least the website will continue to show the full content (especially with regards new images), and will either A) show updated images when the CDN eventually invalidates or B) show updated images when the user sends manual purge requests.
There are frequent recommendations for enabling the “purge manually” setting, but this is at the expense of a partially visible website which seems wrong and counter-intuitive.
Perhaps an additional note against “Purge CDN only if explicit purge button is clicked.” to also read “Enabling this setting will also prevent uploads of new images/files. These will be uploaded only by submitting purge requests.”
At least I understand the mechanism now, but it’s taken me much of two days debugging to work out how and why it would behave like this.
Yes I want to avoid huge invalidation bills but No I don’t want to have to manually purge(upload) images in order for them to actually appear on the website. Can three be a mechanism to meet both of these requirements?