Three years ago, I wrote a popular post entitled "Storage Caching 101". For some reason, it's held up well as one of the top ten posts I've ever written.
But a lot can change in 3+ years, so I thought it time to update and enhance that post, especially as we now have a variety of newer server-side caching options to consider.
Things are moving fast here, so it takes some effort to keep up-to-date. I've done the best I can with what I know.
And, as before, please feel free to add to the comments if you think I've missed something ...