[id='cache-managers_{context}']
= Cache managers

The `CacheManager` API is the starting point for interacting with {brandname} caches.
Cache managers control cache lifecycle; creating, modifying, and deleting cache instances.

{brandname} provides two `CacheManager` implementations:

`EmbeddedCacheManager`:: Entry point for caches when running {brandname} inside the same Java Virtual Machine (JVM) as the client application.

`RemoteCacheManager`:: Entry point for caches when running {brandname} Server in its own JVM. When you instantiate a `RemoteCacheManager` it establishes a persistent TCP connection to {brandname} Server through the Hot Rod endpoint.

[NOTE]
====
Both embedded and remote `CacheManager` implementations share some methods and properties.
However, semantic differences do exist between `EmbeddedCacheManager` and `RemoteCacheManager`.
====
