Is there such a thing as server-side caching?

I assume there is, because I otherwise have no explanation. This is the second time the following has happened to me:

FatCow is my hosting provider. I uploaded a webpage that consisted of thumbnails with links to larger images. I noticed that one of the pages I uploaded had the wrong photo on it, so I went back in to upload the correct photo in both the thumbnail and full photo directories.

When I access the updated page, the thumbnail shows as the new photo, but it still links to the old content. OK, says I. Clear the browser cache. Same issue. So I start up another browser that never accessed that web page. Same issue. So I go to another computer. Same thing. So I try the iPhone via 3G (i.e., through a different ISP than my cable internet). Yep, same thing.

I rename the file to something like “photo3b” instead of “photo3.” Hey, the updated file loads up. So the right file is on the server, it’s just that whenever I try to access it from wherever, the old one is fed to me.

Yes, I just opened up a support ticket to ask what’s going on. In the meantime, I assume some of you smart people know what’s going. I’m assuming it must be server-side caching, because what else could it be? Is this usual? Is there a way to force it not to cache?

Of course there is. If each write to a multi-user server was forced to commit to physical disk at write-time the server’s performance would be atrocious.

That said, if you are getting this issue over a period of more than a day there’s more going on than just failure to write to disk from cache. But there’s nothing you can do about it from your end.

Sounds like server side caching. They may have a problem accessing the actual file, and you’ll keep getting the cache version until it becomes available, if ever.

I had a similar question a year or so ago. You may want to take a look through:

Do ISPs cache pages—and is there anything I can do about it?

Interesting. This was my first thought (well, second, after browser caching), but that’s why I went to my iPhone to rule that possibility out. This is interesting to me, as my last hosting service did not seem to cache content. When I made a change, it went live right away.

So, when somebody makes a change to their website content, it could take up to a day to propagate? I’m sure I must be misunderstanding something.

Ah, it finally flushed its content. The new version is now showing up. So looks like about an hour or so from when I changed it to when the cache is updated.

There isn’t any specific time. It’s just based on the load on the server. Cache updates are a low priority, and any case might have been due to a problem on the server storage. They may simply have been backing up the disk holding your file.

So, out of curiosity, how does it work with time-sensitive content like at news sites?

Not always. The site I used to run (on SharePoint) had a scheduled hourly de-cache.

I’d imagine on news sites they de-cache every few minutes, or have a ‘top story’ de-cache trigger.

This is all very enlightening. I don’t know why I hadn’t noticed it before. Thanks.

Sure. Any server may have a time limit on caching. I was speaking generally. Depending on the application there may be differing priorities as well. Web pages and pictures are often on a lower priority. But even a news site may have problems that interfere with cache updates. Besides increasing performance, one of the functions of caching is to provide a second source for data when there are problems. In addition, there are mirroring systems and other techniques for data integrity so that the data accessed isn’t the most current version.

There’s another possible explanation - depending on the server architecture, the file system may be case-sensitive, so photo3 and Photo3 would not be the same thing - and renaming the files in the described manner might fix the problem without ever revealing what was causing it.

Or it might be something else - I mention this only because it kind of fits the phenomenon as described (there may be some obvious undescribed detail that eliminates this possibility)