Describe the architecture of a distributed caching system. What are the key failure modes you would target during reliability testing?