ルート・スキーマ: Flow Control Params
タイプ: object
ソースを表示
- flowControlEnabled(optional): boolean
デフォルト値: true
接続ファクトリを使用して作成されたプロデューサでフローを制御できるかどうかを指定します。trueに設定すると、JMSサーバーまたは宛先が、指定された上限バイト数またはメッセージしきい値に達した場合に、関連するメッセージ・プロデューサが低速化されます。
- flowInterval(optional): integer(int32)
最小値: 0
最大値: 2147483647
デフォルト値: 60
プロデューサがフローをFlowMaximumのメッセージ数からFlowMinimumに、あるいはその反対に調節するときの調節期間の秒数。
プロデューサがフロー制御されている場合、指定されたFlowIntervalの秒数の間にFlowMaximumからFlowMinimumへと低速化されます。
- flowMaximum(optional): integer(int32)
最小値: 1
最大値: 2147483647
デフォルト値: 500
しきい値の条件に達したプロデューサで許可される秒当たりの最大メッセージ数。プロデューサがフロー制御されている場合、秒当たりFlowMaximumに指定されたメッセージ数よりも処理を高速化できません。
しきい値の条件に達したときにプロデューサがフローを制限していない場合、そのプロデューサの初期フロー制限がFlowMaximumに設定されます。しきい値の条件に達したときにプロデューサがすでにフローを制限している場合(フロー制限はFlowMaximum未満)、プロデューサは次にフローが評価されるまで現在のフロー制限で処理を継続します。
ノート: いったん、しきい値条件への抵触を回避してからは、プロデューサはフロー限度を無視できなくなります。このフロー制限がFlowMaximum未満の場合、プロデューサはフローが評価されるたびにそのフローを徐々にFlowMaximumまで増やす必要があります。プロデューサがFlowMaximumに達すると、そのフロー制限を無視し、そのフローを制限せずに送信できます。
- flowMinimum(optional): integer(int32)
最小値: 1
最大値: 2147483647
デフォルト値: 50
しきい値の条件に達したプロデューサで許可される秒当たりの最小メッセージ数。これはプロデューサのフロー制限の下限値。つまり、フロー制限がFlowMinimumに達したプロデューサの処理速度はWebLogic JMSによりそれ以上落とされません。
プロデューサがフロー制御されている場合、秒当たりFlowMinimumのメッセージ数よりもペース・ダウンされる必要はありません。
- flowSteps(optional): integer(int32)
最小値: 1
最大値: 2147483647
デフォルト値: 10
プロデューサが「最大フロー」のメッセージ数から「最小フロー」に、またはその反対にフローを調整するときに使用するステップ数。具体的には、フロー間隔の調整期間がフロー・ステップ数に分割されます(たとえば、60秒を6ステップで除算するとステップあたり10秒になります)。
また、「最大フロー」と「最小フロー」の差をステップに分割することにより、移動(調整率)が計算されます。各フロー・ステップでは、次のように、現在の条件に基づき必要に応じてフローが上方または下方に調整されます。
- oneWaySendMode(optional): string
デフォルト値: disabled
通常の非永続な非トランザクション・メッセージングのパフォーマンスを向上させるために、この接続ファクトリを使用して作成されたメッセージ・プロデューサに、一方向のメッセージ送信を許可するかどうかを指定します。これが有効化されていると、関連付けられたキュー・センダーやトピック・パブリッシャは、ターゲット宛先のホストJMSサーバーからのレスポンスを内部で待機することなく、メッセージを送信できます。
一方向送信は、プロデューサをホストしている接続ファクトリと、ターゲット宛先をホストしているJMSサーバーが、同じWebLogic Serverインスタンスにターゲット指定されている場合にのみサポートされます。加えて、一方向送信は、XA、トランザクション・セッション、永続的なメッセージング、順序単位、作業単位、分散宛先、クライアント側のストア・アンド・フォワードなど、より高度なサービスの品質(QOS)機能については、サポートされません。プロデューサとターゲット宛先が、別個のドメインにある場合、または前述のより高度なQOS機能のいずれかが検出された場合には、一方向モードの設定は無視され、かわりに標準の双方向送信が使用されます。
ノート:
一方向メッセージ送信は、接続ファクトリが「XA接続ファクトリの有効化
」を指定して構成されている場合には、無効化されます。この設定では、送信側が実際にトランザクションを使用しているかどうかに関係なく、一方向送信が無効になります。
一方向のパフォーマンスからメリットを得るには、デフォルトのOne-Way Send Window Size
値も、より大きい値に構成する必要があります。OneWaySendWindowSize - 1
個のメッセージごとに、一方向ではなく双方向が使用されるため、OneWaySendWindowSize = 1
の場合、すべてのメッセージが実際には双方向となります。
- oneWaySendWindowSize(optional): integer(int32)
最小値: 1
最大値: 2147483647
デフォルト値: 1
One-Way Send Mode
が、キュー・センダーやトピック・パブリッシャによる一方向送信を許可するように設定されている場合に、ウィンドウごとの送信されるメッセージの最大数を指定します。ウィンドウ・サイズでは、さらなる一方向送信を続行できるようになる前に、プロデューサを規定するため双方向メッセージが必要な場合が決定されます。
一方向のパフォーマンスでメリットを得るためには、一方向送信を有効化するのみでなく、デフォルトのOne-Way Send Window Size
値を、より大きい値に構成する必要があります。OneWaySendWindowSize - 1
個のメッセージごとに、一方向ではなく双方向が使用されるため、OneWaySendWindowSize = 1
の場合、すべてのメッセージが実際には双方向となります。
{
"type":"object",
"properties":{
"flowControlEnabled":{
"default":true,
"type":"boolean",
"description":"<p> Specifies whether a producer created using a connection factory allows flow control. If true, the associated message producers will be slowed down if a JMS server or a destination reaches its specified upper byte or message threshold.</p>"
},
"flowInterval":{
"default":60,
"minimum":0,
"maximum":2147483647,
"type":"integer",
"format":"int32",
"description":"<p> 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.</p><p> When a producer is flow controlled, it is slowed down from its FlowMaximum to its FlowMinimum over the specified FlowInterval amount of seconds.</p>"
},
"flowMaximum":{
"default":500,
"minimum":1,
"maximum":2147483647,
"type":"integer",
"format":"int32",
"description":"<p> The maximum number of messages-per-second allowed for a producer that is experiencing a threshold condition. When a producer is flow controlled it will never be allowed to go faster than the FlowMaximum messages per second.</p><p> 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.</p><p><b>Note:</b> 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. </p>"
},
"flowMinimum":{
"default":50,
"minimum":1,
"maximum":2147483647,
"type":"integer",
"format":"int32",
"description":"<p> The minimum number of messages-per-second allowed for a producer that is experiencing a threshold condition. 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. </p><p> When a producer is flow controlled it will never be required to go slower than FlowMinimum messages per second. </p>"
},
"flowSteps":{
"default":10,
"minimum":1,
"maximum":2147483647,
"type":"integer",
"format":"int32",
"description":"<p>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). </p><p>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:</p><ul><li><p>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)</p></li><li><p>The movement upward is linear. The difference is simply divided by the number of steps.</p></li></ul>"
},
"oneWaySendMode":{
"default":"disabled",
"type":"string",
"description":"<p>Specifies whether message producers created using this connection factory are allowed to do one-way message sends to improve typical non-persistent, non-transactional messaging performance. When enabled, the associated queue senders and/or topic publishers can send messages without internally waiting for a response from the target destination's host JMS server.</p><p>One-way sends are supported only when the connection factory hosting the producer and the JMS server hosting the target destination are targeted to the same WebLogic Server instance. In addition, one-way sends are not supported for higher quality-of-service (QOS) features, such as XA, transacted sessions, persistent messaging, unit-of-order, unit-of-work, distributed destinations, and client-side store-and-forward. If the producer and target destination are in separate domains, or if any of these higher QOS features are detected, then the one-way mode setting will be ignored and standard two-way sends will be used instead.</p><ul><li><p><b>Disabled</b> One-way send is disabled.</p></li><li><p><b>Enabled</b> One-way send is permitted for queue senders or topic publishers.</p></li><li><p><b>Topic Only</b> Only topic publishers are permitted to do one-way sends.</p></li></ul><p><b>Notes:</b></p><ul><li><p>One-way message sends are disabled if your connection factory is configured with <code>XA Connection Factory Enabled</code>. This setting disables one-way sends whether or not the sender actually uses transactions.</p></li><li><p>To benefit from one-way performance, the default <code>One-Way Send Window Size</code> value must also be configured higher. After every <code>OneWaySendWindowSize - 1</code> number of messages, a two-way is used instead of a one-way, so all messages are actually two-way when the <code>OneWaySendWindowSize = 1</code></p></li></ul>"
},
"oneWaySendWindowSize":{
"default":1,
"minimum":1,
"maximum":2147483647,
"type":"integer",
"format":"int32",
"description":"<p> Specifies the maximum number of sent messages per window when <code>One-Way Send Mode</code> is set to allow queue senders and/or topic publishers to make one-way sends. The window size determines when a two-way message is required to regulate the producer before it can continue making additional one-way sends.</p><p>To benefit from one-way performance, the default <code>One-Way Send Window Size</code> value must be configured higher <i>in addition to</i> enabling one-way sends. After every <code>OneWaySendWindowSize - 1</code> number of messages, a two-way is used instead of a one-way, so all messages are actually two-way when the <code>OneWaySendWindowSize = 1</code></p>"
}
},
"description":""
}