Name | Type | Default | Description |
---|---|---|---|
balancingStrategy | string | org.infinispan.client.hotrod.impl.transport.tcp.RoundRobinBalancingStrategy | For replicated (vs distributed) Hot Rod server clusters, the client balances requests to the servers according to this strategy. |
connectionTimeout | int | 60000 | This property defines the maximum socket connect timeout before giving up connecting to the server. |
entryWrapper | string | Allows you to specify a custom {@link org.infinispan.loaders.remote.wrapper.EntryWrapper} implementation to wrap cache entries | |
hotRodWrapping | boolean | false | Configures this RemoteCacheStore so that it enables all settings needed to create entries to be served by a HotRod endpoint, for example when performing rolling upgrades. |
forceReturnValues | boolean | false | Whether or not to implicitly FORCE_RETURN_VALUE for all calls. |
keySizeEstimate | int | 64 | The class name of the driver used for connecting to the database. |
marshaller | string | Allows you to specify a custom {@link org.infinispan.marshall.Marshaller} implementation to serialize and deserialize user objects. | |
pingOnStartup | boolean | true | If true, a ping request is sent to a back end server in order to fetch cluster's topology. |
protocolVersion | string | 1.1 | This property defines the protocol version that this client should use. Defaults to 1.1. Other valid values include 1.0. |
rawValues | boolean | false | Normally the RemoteCacheStore stores values wrapped in InternalCacheEntry. Setting this property to true causes the raw values to be stored instead for interoperability with direct access by RemoteCacheManager. Defaults to false (disabled) |
remoteCacheName | string | The name of the remote cache in the remote infinispan cluster, to which to connect to. If unspecified, the default cache will be used | |
socketTimeout | int | 60000 | This property defines the maximum socket read timeout in milliseconds before giving up waiting for bytes from the server. Defaults to 60000 (1 minute) |
tcpNoDelay | boolean | true | Affects TCP NODELAY on the TCP stack. Defaults to enabled |
transportFactory | string | Controls which transport to use. Currently only the TcpTransport is supported. | |
valueSizeEstimate | int | 512 | This hint allows sizing of byte buffers when serializing and deserializing values, to minimize array resizing. |
servers?
This is the initial list of Hot Rod servers to connect to.
server+
Name | Type | Default | Description |
---|---|---|---|
host | string | The hostname or ip address of a remote Hot Rod server | |
port | int | 11222 | The port on which the server is listening (default 11222) |
connectionPool?
Configuration of the connection pool
Name | Type | Default | Description | |||
---|---|---|---|---|---|---|
exhaustedAction |
|
WAIT | Specifies what happens when asking for a connection from a server's pool, and that pool is exhausted. | |||
maxActive | int | -1 | Controls the maximum number of connections per server that are allocated (checked out to client threads, or idle in the pool) at one time. When non-positive, there is no limit to the number of connections per server. When maxActive is reached, the connection pool for that server is said to be exhausted. The default setting for this parameter is -1, i.e. there is no limit. | |||
maxIdle | int | -1 | Controls the maximum number of idle persistent connections, per server, at any time. When negative, there is no limit to the number of connections that may be idle per server. The default setting for this parameter is -1. | |||
maxTotal | int | -1 | Sets a global limit on the number persistent connections that can be in circulation within the combined set of servers. When non-positive, there is no limit to the total number of persistent connections in circulation. When maxTotal is exceeded, all connections pools are exhausted. The default setting for this parameter is -1 (no limit). | |||
minIdle | int | 1 | Sets a target value for the minimum number of idle connections (per server) that should always be available. If this parameter is set to a positive number and timeBetweenEvictionRunsMillis > 0, each time the idle connection eviction thread runs, it will try to create enough idle instances so that there will be minIdle idle instances available for each server. The default setting for this parameter is 1. | |||
timeBetweenEvictionRuns | long | 120000 | Indicates how long the eviction thread should sleep before "runs" of examining idle connections. When non-positive, no eviction thread will be launched. The default setting for this parameter is 2 minutes. | |||
minEvictableIdleTime | long | 1800000 | Specifies the minimum amount of time that an connection may sit idle in the pool before it is eligible for eviction due to idle time. When non-positive, no connection will be dropped from the pool due to idle time alone. This setting has no effect unless timeBetweenEvictionRunsMillis > 0. The default setting for this parameter is 1800000(30 minutes). | |||
testWhileIdle | boolean | true | Indicates whether or not idle connections should be validated by sending an TCP packet to the server, during idle connection eviction runs. Connections that fail to validate will be dropped from the pool. This setting has no effect unless timeBetweenEvictionRunsMillis > 0. The default setting for this parameter is true. |
asyncTransportExecutor?
Configuration for the executor service used for asynchronous work on the Transport, including asynchronous marshalling and Cache 'async operations' such as Cache.putAsync().
Name | Type | Default | Description |
---|---|---|---|
fetchPersistentState | boolean | false | If true, fetch persistent state when joining a cluster. If multiple cache stores are chained, only one of them can have this property enabled. Persistent state transfer with a shared cache store does not make sense, as the same persistent store that provides the data will just end up receiving it. Therefore, if a shared cache store is used, the cache will not allow a persistent state transfer even if a cache store has this property set to true. Finally, setting it to true only makes sense if in a clustered environment, and only 'replication' and 'invalidation' cluster modes are supported. Defaults to false. |
ignoreModifications | boolean | false | If true, any operation that modifies the cache (put, remove, clear, store...etc) won't be applied to the cache store. This means that the cache store could become out of sync with the cache. Defaults to false. |
purgeOnStartup | boolean | false | If true, purges this cache store when it starts up. Defaults to false. |
purgeSynchronously | boolean | false | If true, CacheStore#purgeExpired() call will be done synchronously. Defaults to false. |
purgerThreads | int | 1 | The number of threads to use when purging asynchronously. Defaults to 1 thread. |
async?
Configuration for the async cache loader. If enabled, this provides you with asynchronous writes to the cache store, giving you 'write-behind' caching.
Name | Type | Default | Description |
---|---|---|---|
enabled | boolean | false | If true, all modifications to this cache store happen asynchronously, on a separate thread. |
flushLockTimeout | long | 1 | Timeout to acquire the lock which guards the state to be flushed to the cache store periodically. Defaults to 1. |
modificationQueueSize | int | 1024 | Sets the size of the modification queue for the async store. If updates are made at a rate that is faster than the underlying cache store can process this queue, then the async store behaves like a synchronous store for that period, blocking until the queue can accept more elements. Defaults to 1024 elements. |
shutdownTimeout | long | 25000 | Timeout to stop the cache store. When the store is stopped it's possible that some modifications still need to be applied; you likely want to set a very large timeout to make sure to not loose data. Defaults to 25 seconds. |
threadPoolSize | int | 1 | Size of the thread pool whose threads are responsible for applying the modifications. Defaults to 1. |
singletonStore?
SingletonStore is a delegating cache store used for situations when only one instance in a cluster should interact with the underlying store. The coordinator of the cluster will be responsible for the underlying CacheStore. SingletonStore is a simply facade to a real CacheStore implementation. It always delegates reads to the real CacheStore.
Name | Type | Default | Description |
---|---|---|---|
pushStateTimeout | long | 10000 | If pushStateWhenCoordinator is true, this property sets the maximum number of milliseconds that the process of pushing the in-memory state to the underlying cache loader should take. Defaults to 10 seconds. |
pushStateWhenCoordinator | boolean | true | If true, when a node becomes the coordinator, it will transfer in-memory state to the underlying cache store. This can be very useful in situations where the coordinator crashes and there's a gap in time until the new coordinator is elected. Defaults to true. |
enabled | boolean | false | If true, the singleton store cache store is enabled. Defaults to false. |
properties?
Properties passed to the cache store or loader
property*
Name | Type | Default | Description |
---|---|---|---|
name | string | The property name or key | |
value | string | The property value |