Skip navigation.

Administration Console Online Help

  Previous Next vertical dots separating previous/next from contents/index/pdf Contents Index

 


JMS Connection Factory --> Configuration --> Flow Control

Tasks     Related Topics     Attributes

Overview

This tab defines the flow control configuration attributes that instruct a message producer to adjust its message flow during peak message load. After defining a JMS server, you can configure one or more connection factories to create connections with predefined attributes.

Tasks

Configuring a JMS Connection Factory

Deploying a Connection Factory on Multiple Individual Servers

Controlling the Flow of Messages on JMS Servers and Destinations

Related Topics

"WebLogic JMS Fundamentals" in Programming WebLogic JMS

"Managing WebLogic JMS" in Programming WebLogic JMS

"Developing a WebLogic JMS Application" in Programming WebLogic JMS

Attributes

Table 154-1

Attribute Label

Description

Value Constraints

Flow Maximum

The maximum number of messages per second allowed for a producer that is experiencing a threshold condition on the JMS server or destination (queue or topic). When a producer is flow controlled it will never be allowed to go faster than the FlowMaximum messages per second.

If a producer is not currently limiting its flow when a threshold condition is reached, the initial flow limit for that producer is set to FlowMaximum. If a producer is already limiting its flow when a threshold condition is reached (the flow limit is less than FlowMaximum), then the producer will continue at its current flow limit until the next time the flow is evaluated.

Note: Once a threshold condition has subsided, the producer is not permitted to ignore its flow limit. If its flow limit is less than the FlowMaximum, then the producer must gradually increase its flow to the FlowMaximum each time the flow is evaluated. When the producer finally reaches the FlowMaximum, it can then ignore its flow limit and send without limiting its flow.

MBean: weblogic.management.
configuration.
JMSConnectionFactoryMBean

Attribute: FlowMaximum

Units: messages/second

Minimum: 1

Maximum: 2147483647

Default: 500

Dynamic: yes

Flow Minimum

The minimum number of messages per second allowed for a producer that is experiencing a threshold condition on the JMS server or destination (queue or topic). This is the lower boundary of a producer's flow limit. That is, WebLogic JMS will not further slow down a producer whose message flow limit is at its FlowMinimum.

When a producer is flow controlled it will never be required to go slower than FlowMinimum messages per second.

MBean: weblogic.management.
configuration.
JMSConnectionFactoryMBean

Attribute: FlowMinimum

Units: messages/second

Minimum: 1

Maximum: 2147483647

Default: 50

Dynamic: yes

Flow Interval (seconds)

The adjustment period of time, in seconds, when a producer adjusts its flow from the FlowMaximum number of messages to the FlowMinimum amount, or vice versa.

When a producer is flow controlled, it is slowed down from its FlowMaximum to its FlowMinimum over the FlowInterval seconds.

MBean: weblogic.management.
configuration.
JMSConnectionFactoryMBean

Attribute: FlowInterval

Units: seconds

Minimum: 0

Maximum: 2147483647

Default: 60

Dynamic: yes

Flow Steps

The number of steps used when a producer is adjusting its flow from the Flow Maximum amount of messages to the Flow Minimum amount, or vice versa. Specifically, the Flow Interval adjustment period is divided into the number of Flow Steps (for example, 60 seconds divided by 6 steps is 10 seconds per step).

Also, the movement (i.e., the rate of adjustment) is calculated by dividing the difference between the Flow Maximum and the Flow Minimum into steps. At each Flow Step, the flow is adjusted upward or downward, as necessary, based on the current conditions, as follows:

  • The downward movement (the decay) is geometric over the specified period of time (Flow Interval) and according to the specified number of Flow Steps. (For example, 100, 50, 25, 12.5).

  • The movement upward is linear. The difference is simply divided by the number of steps.

MBean: weblogic.management.
configuration.
JMSConnectionFactoryMBean

Attribute: FlowSteps

Minimum: 1

Maximum: 2147483647

Default: 10

Dynamic: yes

Flow Control Enabled

Specifies whether flow control is enabled for a producer created using this connection factory. If true, the associated message producers will be slowed down if the JMS server reaches Bytes/MessagesThresholdHigh.

MBean: weblogic.management.
configuration.
JMSConnectionFactoryMBean

Attribute: FlowControlEnabled

Default: true

Valid values:

  • true

  • false

Dynamic: yes

Send Timeout (milliseconds)

The maximum length of time, in milliseconds, that a sender will wait when there isn't enough available space (no quota) on a destination to accommodate the message being sent.

The default time is 10 milliseconds. A value of 0 indicates that the sender does not want to wait for space.

This attribute is dynamic. It can be changed at any time. However, changing the value does not affect existing connections or their producers. It only affects new connections made with this connection factory. Producers inherit the setting from the connection factory used to create their session and connection. The value can then be overridden at run time by setting the value on the producer.

Note: Also see the JMS Server -> Configuration -> Thresholds & Quota -> Blocking Send Policy attribute.

MBean: weblogic.management.
configuration.
JMSConnectionFactoryMBean

Attribute: SendTimeout

Minimum: 0

Maximum: 9223372036854775807

Default: 10

Dynamic: yes

 

Skip navigation bar  Back to Top Previous Next