This topic explains how to manage a peer or server cache in VMware Tanzu GemFire.
You start your peer or server cache using a combination of XML declarations and API calls. Close the cache when you are done.
Tanzu GemFire peers are members of a Tanzu GemFire cluster that do not act as clients to another Tanzu GemFire cluster. Tanzu GemFire servers are peers that also listen for and process client requests.
Create your cache:
Start up a cluster and the cluster configuration service:
Start a locator with --enable-cluster-configuration
set to true. (It is set true by default.)
gfsh>start locator --name=locator1
Start up member processes that use the cluster configuration service (enabled by default):
gfsh>start server --name=server1 --server-port=40404
Create regions:
gfsh>create region --name=customerRegion --type=REPLICATE
gfsh>create region --name=ordersRegion --type=PARTITION
Or if you are not using the cluster configuration service, directly configure cache.xml in each member of your cluster. In your cache.xml
, use the cache
DOCTYPE and configure your cache inside a <cache>
element. Example:
<?xml version="1.0" encoding="UTF-8"?>
<cache
xmlns="http://geode.apache.org/schema/cache"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://geode.apache.org/schema/cache http://geode.apache.org/schema/cache/cache-1.0.xsd"
version="1.0">
// NOTE: Use this <cache-server> element only for server processes
<cache-server port="40404"/>
<region name="customerRegion" refid="REPLICATE" />
<region name="ordersRegion" refid="PARTITION" />
</cache>
To programmatically create the Cache
instance:
In your Java application, use the CacheFactory
create method:
Cache cache = new CacheFactory().create();
cacheserver
process, it automatically creates the cache and connection at startup and closes both when it exits.The system creates the connection and initializes the cache according to your gemfire.properties
and cache.xml
specifications.
Close your cache when you are done using the inherited close
method of the Cache
instance:
cache.close();