Why Join a Hierarchy?

As a cache administrator, you might wonder if you should participate in a cache hierarchy. The decision is not always an obvious one; there are many factors and issues for you to consider. People are usually motivated to peer with other caches either for improved performance or to force traffic along a non-default path.

Performance

Performance often motivates people to join a cache hierarchy. However, hierarchical caching is not a magic bullet; it is not guaranteed to improve your performance. If you seek better performance, you must first decide what is most important to you. Reduced bandwidth? Lower latency? In some situations, you may be required to trade one for the other. You should establish a system for measuring your cache’s performance so you can quantitatively compare one configuration to another.

To realize improved performance with a cache hierarchy, the following points should all be true:

  • Some of the objects not found in your cache will be found in your neighbor caches. In other words, you can get cache hits from your neighbors.

  • Cache hits from neighbors are delivered more quickly than misses from origin servers.

  • Cache misses from parent caches are not significantly slower than responses from origin servers.

If any of these are false, then your cache performance may actually suffer. Whether they are true or false depends on a number of factors. For example, if a parent cache is heavily loaded, then it may be slower than a direct connection to ...

Get Web Caching now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.