In the client app I currently work on, there's a "cache server" type thing at its core, and then there are multiple types of caches.