Gregory Maxwell wrote:
In any case, from the second page onwards pages
typically display in
<100ms for me, and the cold cache (first page) load time for me looks
like it's about 230ms, which is also not bad. The grade 'f' is hardly
deserved.
That's because it's an uploaded image. It is cached in the squids, but
not outside. So people will need to check if it's modified, but it can
be modified at any time.
Howard Chen wrote:
Have a simple policy to generate unique URI for each
resources, and
expire as far as possible.
That's what is being used for site js and css (the
appened query string)
and that's why it can have the expire header.
We could provide a per-image unique URI with a large caching, based on
some id or simply in the image hash. The tradeoff is that then you can
set a large expiry time, but you need to purge all the pages including
the image when it's reuploaded, whereas with the current system that
would only be needed when it's deleted (or uploaded for the first time).
Meybe the html caches aren't even purged when the image is deleted on
commons, given that there is no single table for that (the CheckUsage
problem). Anyone can confirm? But it degrades gracefully, something a
hash-based path wouldn't do.