Network Deployment (Distributed operating systems), v8.0 > Reference > Custom properties
Message listener service custom properties
Use this panel to view or change custom properties of the message listener service. From the console...
Servers > Server Types > WebSphere application servers > server_name
> [Communications] Messaging > Message Listener Service > Custom Properties .
We can use the Custom properties page to define the following properties for use by the message listener service.
- DYNAMIC.CONFIGURATION.ENABLED
- MAX.RECOVERY.RETRIES
- MQJMS.POOLING.THRESHOLD
- MQJMS.POOLING.TIMEOUT
- NON.ASF.RECEIVE.TIMEOUT
- NON.ASF.BMT.ROLLBACK.ENABLED
- RECOVERY.RETRY.INTERVAL
- SERVER.SESSION.POOL.REAP.TIME
- SERVER.SESSION.POOL.UNUSED.TIMEOUT
- SERVER.SESSION.POOL.UNUSED.TIMEOUT.lpname
DYNAMIC.CONFIGURATION.ENABLED
This property controls whether the application server on which a listener port is created requires to be restarted. Set this property to true to enable dynamic configuration.
Information Value Data type Boolean Default False (not selected)
MAX.RECOVERY.RETRIES
The maximum number of times that a listener port managed by this service tries to recover from a failure before giving up and stopping. When stopped the associated listener port is changed to the stop state. The interval between retry attempts is defined by the RECOVERY.RETRY.INTERVAL property.
A failure can be caused by either of the following conditions:
- An unexpected error has occurred when a listener port tries to get a message from the JMS provider.
- The connection between the application server and the JMS provider has been lost, usually due to a network error.
Information Value Data type Integer Units Retry attempts Default 5 Range 0 (no retries) through 2147483647
MQJMS.POOLING.THRESHOLD
The maximum number of unused connections in the pool.
An MQSimpleConnectionManager allocates connections on a most-recently-used basis, and destroys connections on a least-recently-used basis. By default, a connection is destroyed if there are more than ten unused connections in the pool.
Information Value Data type Integer Units Number of connections Default 10
MQJMS.POOLING.TIMEOUT
The number of milliseconds after which a connection in the pool is destroyed if it has not been used.
An MQSimpleConnectionManager allocates connections on a most-recently-used basis, and destroys connections on a least-recently-used basis. By default, a connection is destroyed if it has not been used for five minutes.
Information Value Data type Integer Units Milliseconds Default 5 minutes
NON.ASF.RECEIVE.TIMEOUT
The timeout in milliseconds for synchronous message receives performed by message-driven bean listener sessions in the non-ASF mode of operation.
The message listener service has two modes of operation, Application Server Facilities (ASF) and non-Application Server Facilities (non-ASF):
- ASF mode provides concurrency and transactional support for applications. For publish/subscribe message-drive beans, ASF mode provides better throughput and concurrency, because in the non-ASF mode the listener is single-threaded.
- Non-ASF mode is mainly for use with third-party messaging providers that do not support JMS ASF, which is an optional extension to the JMS specification. Non-ASF mode is also transactional but, because the path length is shorter than for ASF mode, usually provides improved performance.
To enable the non-ASF mode of operation for all message-driven bean listeners on the application server, set this property to a non-zero value.
If your messaging system is running in non-ASF mode, to avoid unwanted transaction timeouts, make sure that the time that you specify for the NON.ASF.RECEIVE.TIMEOUT message listener service custom property is smaller than the sum of the maximum amount of time that the onMessage() method of the message-driven bean (MDB) takes to process the message, plus the time you specify for the Total transaction lifetime timeout transaction service property.
Information Value Data type Integer Units Milliseconds Default ASF mode (custom property not created) Range 0 or greater milliseconds
0
Non-ASF mode is disabled
1 or more
The timeout in milliseconds for non-ASF message-driven bean listener synchronous session receives Recommended If a transaction timeout occurs, the message must recycle causing extra work. To use the non-ASF mode, set this property to less than the transaction timeout, but greater than or equal to the maximum duration of your message-driven bean onMessage() method. For example, if your message-driven bean onMessage() method typically takes a maximum of 10 seconds, and the transaction timeout is set to 120 seconds, you might set the NON.ASF.RECEIVE.TIMEOUT property to no more than 110000 milliseconds (that is, 110 seconds).
NON.ASF.BMT.ROLLBACK.ENABLED
When the non-Application Server Facilities (non-ASF) mode of operation is in use (because we have set the NON.ASF.RECEIVE.TIMEOUT property to a non-zero value), and a message-driven bean that uses bean-managed transactions generates a runtime exception, the NON.ASF.BMT.ROLLBACK.ENABLED property determines whether messages are returned to the destination.
The message listener service has two modes of operation, Application Server Facilities (ASF) and non-Application Server Facilities (non-ASF):
- ASF mode provides concurrency and transactional support for applications. For publish/subscribe message-drive beans, ASF mode provides better throughput and concurrency, because in the non-ASF mode the listener is single-threaded.
- Non-ASF mode is mainly for use with third-party messaging providers that do not support JMS ASF, which is an optional extension to the JMS specification. Non-ASF mode is also transactional but, because the path length is shorter than for ASF mode, usually provides improved performance.
When this property is set to false (default), the message is automatically acknowledged before it is passed to the message-driven bean.
When this property is set to true, the message listener service sends a message acknowledgement to the client after the message is successfully processed by the message-driven bean, and the message listener service requests recovery of any message for which the bean generates an exception.
Information Value Data type Boolean Default False
RECOVERY.RETRY.INTERVAL
The time in seconds between retry attempts by a listener port to recover from a failure. The maximum number of retry attempts is defined by the MAX.RECOVERY.RETRIES property.
A failure can be caused by either of the following conditions:
- An unexpected error has occurred when a listener port tries to get a message from the JMS provider.
- The connection between the application server and the JMS provider has been lost, usually due to a network error.
Information Value Data type Integer Units Seconds Default 60 Range 1 through 2147483647
SERVER.SESSION.POOL.REAP.TIME
The time in seconds between checks on server session pools. To enable server session pool monitoring, set this property to a non-negative value.
The SERVER.SESSION.POOL.REAP.TIME custom property is not applicable if your messaging system is running in non-ASF mode.
aug2011
Information Value Data type Integer Units Seconds Default -1 (disabled) Range -2147483648 through 2147483647
SERVER.SESSION.POOL.UNUSED.TIMEOUT
The default server session pool timeout in seconds.
When this property is set to a non-negative value, it is compared to the time that has elapsed since a server session was used. If the timeout value is less than the elapsed time, the server session is removed from the server session pool and its JMS session is returned to the JMS session pool. For example, if the timeout value is one second and the time that has elapsed since a particular server session was used is two seconds, that server session is removed from the server session pool and its JMS session is returned to the JMS session pool.
The SERVER.SESSION.POOL.UNUSED.TIMEOUT custom property is not applicable if your messaging system is running in non-ASF mode.
aug2011
Information Value Data type Integer Units Seconds Default -1 (disabled) Range -2147483648 through 2147483647
SERVER.SESSION.POOL.UNUSED.TIMEOUT.lpname
This property overrides the default SERVER.SESSION.POOL.UNUSED.TIMEOUT value for the listener port with the name defined for lpname. This value applies to all message-driven beans that use the specified listener port.
If this override is set to a non-negative value, it overrides the SERVER.SESSION.POOL.UNUSED.TIMEOUT property, even if the SERVER.SESSION.POOL.UNUSED.TIMEOUT property has a negative value.
If this override is set to a negative value, it disables server session pool monitoring for the specified listener port.
The SERVER.SESSION.POOL.UNUSED.TIMEOUT.lpname custom property is not applicable if your messaging system is running in non-ASF mode.
aug2011
Information Value Data type Integer Units Seconds Default Not set Range -2147483648 through 2147483647
Message processing in ASF mode and non-ASF mode
Avoiding transaction timeouts in non-ASF mode
Configure the message listener service
Monitor server session pools for listener ports
Related
Message listener service