@Target(value=TYPE) @Retention(value=RUNTIME) @Inherited @Documented @Import(value=AddPoolConfiguration.class) public @interface EnablePool
EnablePool
annotation configures a Spring Configuration
annotated class with a "named" GemFire client Pool
bean in the application context.
This annotation is used in conjunction with the ClientCacheApplication
annotation to add an additional
Pool
to a GemFire cache client application configured with Spring (Data GemFire).
To add more than 1 Pool
to your application, this annotation can be nested in the EnablePools
annotation.Pool
,
PoolFactory
,
AddPoolConfiguration
,
AddPoolsConfiguration
,
EnablePools
,
PoolConfigurer
Modifier and Type | Required Element and Description |
---|---|
String |
name
Specifies the
name of the client Pool in Pivotal GemFire/Apache Geode, which is also
used as the name of the bean registered in the Spring container as well as the name used in the resolution
of Pool properties from application.properties
(e.g. |
Modifier and Type | Optional Element and Description |
---|---|
int |
freeConnectionTimeout
Configures the free connection timeout for this pool.
|
long |
idleTimeout
Configures the amount of time a connection can be idle before expiring the connection.
|
int |
loadConditioningInterval
Configures the load conditioning interval for this pool.
|
EnablePool.Locator[] |
locators
Configures the GemFire
Locators to which
this cache client will connect. |
String |
locatorsString
A
String containing a comma-delimited list of hosts and ports defining the connection endpoints
of GemFire Locators in the cluster. |
int |
maxConnections
Configures the max number of client to server connections that the pool will create.
|
int |
minConnections
Configures the minimum number of connections to keep available at all times.
|
boolean |
multiUserAuthentication
If set to true then the created pool can be used by multiple users.
|
long |
pingInterval
Configures how often to ping servers to verify that they are still alive.
|
boolean |
prSingleHopEnabled
By default
prSingleHopEnabled is true in which case the client is aware of the location
of partitions on servers hosting Regions with DataPolicy.PARTITION . |
int |
readTimeout
Configures the number of milliseconds to wait for a response from a server before timing out the operation
and trying another server (if any are available).
|
int |
retryAttempts
Configures the number of times to retry a request after timeout/exception.
|
int |
serverConnectionTimeout
Configures the server connection timeout for this Pool.
|
String |
serverGroup
Configures the group that all servers in which this pool connects to must belong to.
|
EnablePool.Server[] |
servers
Configures the GemFire
CacheServers to which
this cache client will connect. |
String |
serversString
A
String containing a comma-delimited list of hosts and ports defining the connection endpoints
of GemFire Servers in the cluster. |
int |
socketBufferSize
Configures the socket buffer size for each connection made in this pool.
|
int |
socketConnectTimeout
Configures the
socket connect timeout for this "named" Pool . |
String |
socketFactoryBeanName
Configures the
SocketFactory bean name used by this Pool
to create connections to both Locators (if configured using locators() ) and Servers. |
int |
statisticInterval
Configures how often to send client statistics to the server.
|
int |
subscriptionAckInterval
Configures the interval in milliseconds to wait before sending acknowledgements to the cache server
for events received from the server subscriptions.
|
boolean |
subscriptionEnabled
If set to true then the created pool will have server-to-client subscriptions enabled.
|
int |
subscriptionMessageTrackingTimeout
Configures the messageTrackingTimeout attribute which is the time-to-live period, in milliseconds,
for subscription events the client has received from the server.
|
int |
subscriptionRedundancy
Configures the redundancy level for this pools server-to-client subscriptions.
|
boolean |
threadLocalConnections
Configures the thread local connections policy for this pool.
|
public abstract String name
name
of the client Pool
in Pivotal GemFire/Apache Geode, which is also
used as the name of the bean registered in the Spring container as well as the name used in the resolution
of Pool
properties from application.properties
(e.g. spring.data.gemfire.pool.<poolName>.max-connections), that are specific to this Pool
.public abstract int freeConnectionTimeout
PoolFactory.DEFAULT_FREE_CONNECTION_TIMEOUT
.
Use either the spring.data.gemfire.pool.<poolName>.free-connection-timeout property
or the spring.data.gemfire.pool.free-connection-timeout property
in application.properties.public abstract long idleTimeout
PoolFactory.DEFAULT_IDLE_TIMEOUT
.
Use either the spring.data.gemfire.pool.<poolName>.idle-timeout property
or the spring.data.gemfire.pool.idle-timeout property
in application.properties.public abstract int loadConditioningInterval
PoolFactory.DEFAULT_LOAD_CONDITIONING_INTERVAL
.
Use either the spring.data.gemfire.pool.<poolName>.load-conditioning-interval property
or the spring.data.gemfire.pool.load-conditioning-interval property
in application.properties.public abstract EnablePool.Locator[] locators
Locators
to which
this cache client will connect.
Use either the spring.data.gemfire.pool.<poolName>.locators property
or the spring.data.gemfire.pool.locators property
in application.properties.public abstract String locatorsString
String
containing a comma-delimited list of hosts and ports defining the connection endpoints
of GemFire Locators in the cluster.
The String
must be formatted as: 'host1[port], host2[port], ..., hostN[port]'.
Use either the spring.data.gemfire.pool.<poolName>.locators property
or the spring.data.gemfire.pool.locators property
in application.properties.public abstract int maxConnections
PoolFactory.DEFAULT_MAX_CONNECTIONS
.
Use either the spring.data.gemfire.pool.<poolName>.max-connections property
or the spring.data.gemfire.pool.max-connections property
in application.properties.public abstract int minConnections
PoolFactory.DEFAULT_MIN_CONNECTIONS
.
Use either the spring.data.gemfire.pool.<poolName>.min-connections property
or the spring.data.gemfire.pool.min-connections property
in application.properties.public abstract boolean multiUserAuthentication
PoolFactory.DEFAULT_MULTIUSER_AUTHENTICATION
.
Use either the spring.data.gemfire.pool.<poolName>.multi-user-authentication property
or the spring.data.gemfire.pool.multi-user-authentication property
in application.properties.public abstract long pingInterval
PoolFactory.DEFAULT_PING_INTERVAL
.
Use either the spring.data.gemfire.pool.<poolName>.ping-interval property
or the spring.data.gemfire.pool.ping-interval property
in application.properties.public abstract boolean prSingleHopEnabled
prSingleHopEnabled
is true in which case the client is aware of the location
of partitions on servers hosting Regions with DataPolicy.PARTITION
.
Defaults to PoolFactory.DEFAULT_PR_SINGLE_HOP_ENABLED
.
Use either the spring.data.gemfire.pool.<poolName>.pr-single-hop-enabled property
or the spring.data.gemfire.pool.pr-single-hop-enabled property
in application.properties.public abstract int readTimeout
PoolFactory.DEFAULT_READ_TIMEOUT
.
Use either the spring.data.gemfire.pool.<poolName>.read-timeout property
or the spring.data.gemfire.pool.read-timeout property
in application.properties.public abstract int retryAttempts
PoolFactory.DEFAULT_RETRY_ATTEMPTS
.
Use either the spring.data.gemfire.pool.<poolName>.retry-attempts property
or the spring.data.gemfire.pool.retry-attempts property
in application.properties.public abstract int serverConnectionTimeout
AllConnectionsInUseException
. If max connections
is not set this setting has no effect. This setting differs from freeConnectionTimeout()
, which sets
the wait time for any server connection in the pool, whereas this setting sets the wait time for a free
connection to a specific server.
Defaults to PoolFactory.DEFAULT_SERVER_CONNECTION_TIMEOUT
.
Use either the spring.data.gemfire.pool.<poolName>.server-connection-timeout property
or the spring.data.gemfire.pool.server-connection-timeout property
in application.properties.public abstract String serverGroup
PoolFactory.DEFAULT_SERVER_GROUP
.
Use either the spring.data.gemfire.pool.<poolName>.server-group property
or the spring.data.gemfire.pool.server-group property
in application.properties.public abstract EnablePool.Server[] servers
CacheServers
to which
this cache client will connect.
Use either the spring.data.gemfire.pool.<poolName>.servers property
or the spring.data.gemfire.pool.servers property
in application.properties.public abstract String serversString
String
containing a comma-delimited list of hosts and ports defining the connection endpoints
of GemFire Servers in the cluster.
The String
must be formatted as: 'host1[port], host2[port], ..., hostN[port]'.
Use either the spring.data.gemfire.pool.<poolName>.servers property
or the spring.data.gemfire.pool.servers property
in application.properties.public abstract int socketBufferSize
PoolFactory.DEFAULT_SOCKET_BUFFER_SIZE
.
Use either the spring.data.gemfire.pool.<poolName>.socket-buffer-size property
or the spring.data.gemfire.pool.socket-buffer-size property
in application.properties.public abstract int socketConnectTimeout
socket connect timeout
for this "named" Pool
.
The number of milliseconds specified as socket timeout when the client connects to the servers/locators.
A timeout of zero is interpreted as an infinite timeout. The connection will then block until established
or an error occurs.
Defaults to PoolFactory.DEFAULT_SOCKET_CONNECT_TIMEOUT
.
Use either the spring.data.gemfire.pool.<poolName>.socket-connect-timeout property
or the spring.data.gemfire.pool.socket-connect-timeout property in application.properties.public abstract String socketFactoryBeanName
SocketFactory
bean name
used by this Pool
to create connections to both Locators (if configured using locators()
) and Servers.
Defaults to unset.
Use either the spring.data.gemfire.pool.<poolName>.socket-factory-bean-name property
or the spring.data.gemfire.pool.socket-factory-bean-name property
in application.properties.public abstract int statisticInterval
PoolFactory.DEFAULT_STATISTIC_INTERVAL
.
Use either the spring.data.gemfire.pool.<poolName>.statistic-interval property
or the spring.data.gemfire.pool.statistic-interval property
in application.properties.public abstract int subscriptionAckInterval
PoolFactory.DEFAULT_SUBSCRIPTION_ACK_INTERVAL
.
Use either the spring.data.gemfire.pool.<poolName>.subscription-ack-interval property
or the spring.data.gemfire.pool.subscription-ack-interval property
in application.properties.public abstract boolean subscriptionEnabled
PoolFactory.DEFAULT_SUBSCRIPTION_ENABLED
.
Use either the spring.data.gemfire.pool.<poolName>.subscription-enabled property
or the spring.data.gemfire.pool.subscription-enabled property
in application.properties.public abstract int subscriptionMessageTrackingTimeout
PoolFactory.DEFAULT_SUBSCRIPTION_MESSAGE_TRACKING_TIMEOUT
.
Use either the spring.data.gemfire.pool.<poolName>.subscription-message-tracking-timeout property
or the spring.data.gemfire.pool.subscription-message-tracking-timeout property
in application.properties.public abstract int subscriptionRedundancy
PoolFactory.DEFAULT_SUBSCRIPTION_REDUNDANCY
.
Use either the spring.data.gemfire.pool.<poolName>.subscription-redundancy property
or the spring.data.gemfire.pool.subscription-redundancy property
in application.properties.public abstract boolean threadLocalConnections
PoolFactory.DEFAULT_THREAD_LOCAL_CONNECTIONS
.
Use either the spring.data.gemfire.pool.<poolName>.thread-local-connections property
or the spring.data.gemfire.pool.thread-local-connections property
in application.properties.Copyright © 2011–2021 Pivotal Software, Inc.. All rights reserved.