System Properties
A variety of system properties can be specified when a client connects to a distributed system, either programmatically or in a geode.properties
file.
See apache::geode::client::SystemProperties
in the C++ API docs.
The following settings can be configured:
- General Properties
Basic information for the process, such as cache creation parameters. - Logging Properties
How and where to log system messages. - Statistics Archiving Properties
How to collect and archive statistics information. - Durable Client Properties
Information about the durable clients connected to the system. - System Properties for Client Authentication and Authorization
Information about various security parameters. - System Properties for High Availability
System properties to configure periodic acknowledgment (ack).
The following tables list attributes that can be specified programmatically or stored in the geode.properties
file to be read by a client.
General Properties
Attribute | Description | Default |
---|---|---|
cache-xml-file | Name and path of the file whose contents are used by default to configure a cache if one is created. If not specified, the client starts with an empty cache, which is populated at run time. | no default |
heap-lru-delta |
The percentage of entries the system will evict each time it detects that it has exceeded the heap-lru-limit.
This property is used only if heap-lru-limit is greater than 0. |
10 % |
heap-lru-limit | Maximum amount of memory, in megabytes, used by the cache for all regions. If this limit is exceeded by heap-lru-delta percent, LRU reduces the memory footprint as necessary. If not specified, or set to 0, memory usage is governed by each region’s LRU entries limit, if any. |
0 |
conflate-events | Client side conflation setting, which is sent to the server. | server |
connect-timeout | Amount of time (in seconds) to wait for a response after a socket connection attempt. | 59 |
connection-pool-size | Number of connections per endpoint | 5 |
enable-chunk-handler-thread | If the chunk-handler-thread is operative (enable-chunk-handler=true), it processes the response for each application thread. When the chunk handler is not operative (enable-chunk-handler=false), each application thread processes its own response. | false |
disable-shuffling-of-endpoints | If true, prevents server endpoints that are configured in pools from being shuffled before use. | false |
max-fe-threads | Thread pool size for parallel function execution. An example of this is the GetAll operations. | 2 * number of logical processors |
max-socket-buffer-size | Maximum size of the socket buffers, in bytes, that the client will try to set for client-server connections. | 65 * 1024 |
notify-ack-interval | Interval, in seconds, in which client sends acknowledgments for subscription notifications. | 1 |
notify-dupcheck-life | Amount of time, in seconds, the client tracks subscription notifications before dropping the duplicates. | 300 |
ping-interval | Interval, in seconds, between communication attempts with the server to show the client is alive. Pings are only sent when the ping-interval elapses between normal client messages. This must be set lower than the server’s maximum-time-between-pings . |
10 |
redundancy-monitor-interval | Interval, in seconds, at which the subscription HA maintenance thread checks for the configured redundancy of subscription servers. | 10 |
tombstone-timeout | Time in milliseconds used to timeout tombstone entries when region consistency checking is enabled. | 480000 |
Logging Properties
Attribute | Description | Default |
---|---|---|
log-disk-space-limit | Maximum amount of disk space, in megabytes, allowed for all log files, current, and rolled. If set to 0, the space is unlimited. | 0 |
log-file | Name and full path of the file where a running client writes log messages. If not specified, logging goes to stdout . |
no default file |
log-file-size-limit | Maximum size, in megabytes, of a single log file. Once this limit is exceeded, a new log file is created and the current log file becomes inactive. If set to 0, the file size is unlimited. | 0 |
log-level | Controls the types of messages that are written to the application’s log. These are the levels, in descending order of severity and the types of message they provide:
Enabling logging at any level enables logging for all higher levels. |
config |
Statistics Archiving Properties
Attribute | Description | Default |
---|---|---|
statistic-sampling-enabled | Controls whether the process creates a statistic archive file. | false |
statistic-archive-file | Name and full path of the file where a running system member writes archives statistics. If archive-disk-space-limit is not set, the client appends the process ID to the configured file name, like statArchive-PID.gfs . If the space limit is set, the process ID is not appended but each rolled file name is renamed to statArchive-ID.gfs, where ID is the rolled number of the file. |
./statArchive.gfs |
archive-disk-space-limit | Maximum amount of disk space, in gigabytes, allowed for all archive files, current, and rolled. If set to 0, the space is unlimited. | 0 |
archive-file-size-limit | Maximum size, in megabytes, of a single statistic archive file. Once this limit is exceeded, a new statistic archive file is created and the current archive file becomes inactive. If set to 0, the file size is unlimited. | 0 |
statistic-sample-rate | Rate, in seconds, that statistics are sampled. Operating system statistics are updated only when a sample is taken. If statistic archival is enabled, then these samples are written to the archive.
Lowering the sample rate for statistics reduces system resource use while still providing some statistics for system tuning and failure analysis. |
1 |
enable-time-statistics | Enables time-based statistics for the distributed system and caching. For performance reasons, time-based statistics are disabled by default./td> | false |
Durable Client Properties
Attribute | Description | Default |
---|---|---|
auto-ready-for-events | Whether client subscriptions automatically receive events when declaratively configured via XML. If set to false , event startup is not automatic and you need to call the Cache.ReadyForEvents() method API after subscriptions for the server to start delivering events. |
true |
durable-client-id | Identifier to specify if you want the client to be durable. | empty |
durable-timeout | Time, in seconds, a durable client’s subscription is maintained when it is not connected to the server before being dropped. | 300 |
Security Properties
The table describes the security-related system properties for native client authentication and authorization.
See SSL Client/Server Communication.
Attribute | Description | Default |
---|---|---|
security-client-kspath |
Path to a .PEM file, which contains the public certificates for all Geode cache servers to which the client can connect through specified endpoints. | null |
ssl-enabled |
True if SSL connection support is enabled. | empty |
ssl-keystore |
Name of the .PEM keystore file, containing the client’s private key. Not set by default. Required if ssl-enabled is true. |
|
ssl-keystore-password |
Sets the password for the private key .PEM file for SSL. | null |
ssl-truststore |
Name of the .PEM truststore file, containing the servers’ public certificate. Not set by default. Required if |
High Availability Properties
Attribute | Description | Default |
---|---|---|
notify-ack-interval |
Minimum period, in seconds, between two consecutive acknowledgment messages sent from the client to the server. | 10 |
notify-dupcheck-life |
Minimum time, in seconds, a client continues to track a notification source for duplicates when no new notifications arrive before expiring it. | 300 |