![]() ![]() ![]() ![]() |
JMS Topic: Configuration: Thresholds and Quotas
Configuration Options Related Tasks Related Topics
Use this page to define upper and lower byte and/or message thresholds for the topic. Exceeding these thresholds will trigger events such as generating log messages and starting message flow control. You can also specify a maximum size allowed for messages on the topic and select a pre-configured quota, which determines the maximum number of bytes or messages that the topic is allowed to store to conserve memory use.
If a JMS template is specified for this topic, then the default values imply that the actual value will come from the template. A JMS server can also manage thresholds and certain quota settings for all destinations in a JMS module targeted to that JMS server.
Configuration Options
Name Description Bytes Threshold High The upper threshold (total number of bytes in this destination) that triggers logging or flow control events. The value of java.lang.Long.MAX_VALUE disables logging and flow control events for the destination.
If the number of bytes exceeds this threshold, the triggered events are:
Log Messages
A message is logged on the server indicating a high threshold condition.
Flow Control
If flow control is enabled, the destination becomes armed and instructs producers to begin decreasing their message flow.
Range of Values: <= BytesMaximum; >BytesThresholdLow
Any change to this threshold affects only incoming messages; stored messages are not affected.
MBean Attribute (Does not apply to application modules) :
ThresholdParamsBean.BytesHigh
Minimum value:
0
Maximum value:
9223372036854775807
Bytes Threshold Low The lower threshold (total number of bytes in this destination) that triggers logging or flow control events. The value of java.lang.Long.MAX_VALUE disables logging and flow control events for the destination.
If the number of bytes falls below this threshold, the triggered events are:
Log Messages
A message is logged on the server indicating a low threshold condition.
Flow Control
If flow control is enabled, the destination becomes disarmed and instructs producers to begin increasing their message flow.
Range of Values: < BytesThresholdHigh
Any change to this threshold affects only incoming messages; stored messages are not affected.
MBean Attribute (Does not apply to application modules) :
ThresholdParamsBean.BytesLow
Minimum value:
0
Maximum value:
9223372036854775807
Messages Threshold High The upper threshold (total number of messages in this destination) that triggers logging or flow control events. The value of java.lang.Long.MAX_VALUE disables logging and flow control events for the destination.
If the number of messages exceeds this threshold, the triggered events are:
Log Messages
A message is logged on the server indicating a high threshold condition.
Flow Control
If flow control is enabled, the destination becomes armed and instructs producers to begin decreasing their message flow.
Range of Values: <= MessagesMaximum; >MessagesThresholdLow
Any change to this threshold affects only incoming messages; stored messages are not affected.
MBean Attribute (Does not apply to application modules) :
ThresholdParamsBean.MessagesHigh
Minimum value:
0
Maximum value:
9223372036854775807
Messages Threshold Low The lower threshold (total number of messages in this destination) that triggers logging or flow control events. The value of java.lang.Long.MAX_VALUE disables logging and flow control events for the destination.
If the number of messages falls below this threshold, the triggered events are:
Log Messages
A message is logged on the server indicating a low threshold condition.
Flow Control
If flow control is enabled, the destination becomes disarmed and instructs producers to begin increasing their message flow.
Range of Values: < MessagesThresholdHigh
Any change to this threshold affects only incoming messages; stored messages are not affected.
MBean Attribute (Does not apply to application modules) :
ThresholdParamsBean.MessagesLow
Minimum value:
0
Maximum value:
9223372036854775807
Quota A Quota controls the allotment of system resources available to destinations. For example, the number of bytes a destination is allowed to store can be configured with a Quota.
MBean Attribute (Does not apply to application modules) :
DestinationBean.Quota
Maximum Message Size The maximum size of a message that is accepted from producers on this destination.
The message size includes the message body, any user-defined properties, and the user-defined JMS header fields:
JMSCorrelationID
andJMSType
. Producers sending messages that exceed the configured maximum message size for the destination receive aResourceAllocationException
.The maximum message size is only enforced for the initial production of a message. Messages that are redirected to an error destination or forwarded to a member of a distributed destination are not checked for size. For instance, if a destination and its corresponding error destination are configured with a maximum message size of 128K bytes and 64K bytes, respectively, a message of 96K bytes could be redirected to the error destination (even though it exceeds the 64K byte maximum), but a producer could not directly send the 96K byte message to the error destination.
This attribute is dynamically configurable, but only incoming messages are impacted; stored messages are not impacted.
MBean Attribute (Does not apply to application modules) :
DestinationBean.MaximumMessageSize
Minimum value:
0
Maximum value:
2147483647
Topic Subscription Messages Limit The maximum number of messages that can be stored in a topic subscription.
If a new message arrives on subscriptions that have reached the specified limit, then the first-most available messages on these subscriptions will be deleted to make room for the new message. Subscription messages are immune from this deletion if they're participating in a pending transaction, have already been passed to a consumer and are awaiting acknowledgement, or if they are part of a Unit-of-Work that is still waiting to accumulate all of its messages. Note that if all messages are immune from deletion, then a new message can cause a subscription size to exceed its limit.
A value of -1 means no limit override.
MBean Attribute (Does not apply to application modules) :
TopicSubscriptionParamsBean.MessagesLimitOverride
Minimum value:
-1
Maximum value:
9223372036854775807
![]() |