This document discusses various architectural patterns for caching microservices, including embedded caching, embedded distributed caching using Hazelcast, client-server caching with a separate cache server, caching as a cloud service, sidecar caching using a cache container alongside the application container, reverse proxy caching, and reverse proxy sidecar caching. The presentation compares the pros and cons of each approach and provides examples of how to implement some of the patterns using Hazelcast and Kubernetes.