Server Configuration Properties

These tables list the cache.xml properties for the cache server configuration. Example XML:
<cache>
    <cache-server port="40404" group="databaseServer" />
    ...

The GemFire cacheserver process uses only cache.xml configuration. For application servers, you can set the same configuration properties using the com.gemstone.gemfire.cache.server.CacheServer and com.gemstone.gemfire.cache.Cache interfaces. For detailed information, see the online Java API documentation.

Server's <cache> Configuration Description
message-sync-interval The frequency, in seconds, that the primary server sends subscription queue synchronization messages to its secondaries. Default: 1.
<cache-server> Configures the cache to serve region data to clients in a client/server caching system.
Server's <cache-server> Configuration Description
bind-address Hostname or IP address that the server is to listen on for client connections. If null, the server listens on the machine’s default address. Default: null.
custom-load-probe Application plug-in used to provide current and predicted server load information to the server locators. If this is not defined, the default GemFire load probe is used. Default: null.
client-subscription Overflow specification for client subscription queues. Sets a capacity limit on the in-memory queue and specifies where to overflow when capacity is reached. By default no overflow is used. Specified in three parts:
  • eviction-policy. How the capacity is calculated. The options are mem for memory use, entry for message count, and null for no overflow. Default: null
  • capacity. Used if eviction-policy is not none. Specified in megabytes for mem and as a positive integer for entry. Default: 1
  • disk-store-name. Used if eviction-policy is not none. Default: default disk store. If specified, the disk-store-name must specify a disk store that is already defined in the cache.
group Groups this server belongs to for servicing clients, in addition to the global server group to which every server belongs. Default: null.

hostname-for-clients

Hostname or IP address to pass to the client as the location where the server is listening. When the server connects to the locator it tells the locator the host and port where it is listening for client connections. If the host the server uses by default is one that the client can’t translate into an IP address, the client will have no route to the server’s host and won’t be able to find the server. For this situation, you must supply the server’s alternate hostname for the locator to pass to the client. If null, the server’s bind-address setting is used. Default: null.
load-poll-interval Frequency, in milliseconds, to poll the load probe for load information on the server. Default: 5000 (5 seconds).

max-connections

Maximum number of client connections for the server. When the maximum is reached, the server refuses additional client connections. Default: 800.
Note: Set this at least as high as max-threads.
max-threads Maximum number of threads allowed in this server to service client connections. When the limit is reached, server threads begin servicing multiple connections. A zero setting causes the server to use a thread for every client connection. Default: 0.
Note: Set this no higher than max-connections.
maximum-message-count Maximum number of messages allowed in a subscription queue. When the queue reaches this limit, messages block. Default: 230000.
Note: Used only if client-subscription is not configured.
maximum-time-between-pings Maximum time, in milliseconds, the server allows to pass between messages or pings indicating a client is healthy. Default: 60000 (1 minute).
Note: A setting of 0 or a negative number turns off client health monitoring. Be careful not to do this accidentally.
message-time-to-live Setting used for highly available subscription queues. The expiration time, in seconds, for non-durable messages in the secondary server’s client subscription queue. The system removes non-durable messages that have been in the queue beyond this time. If set to 0 (zero), the messages are never removed. Default: 180 (3 minutes).
Note: Set this high enough to avoid removing messages that are still valid, to aovid losing messages during server failover.

port

Port that the server listens on for client communication. Default: 40404.
socket-buffer-size Size for socket buffers used for server-to-client communication. Default: 32768.